Last update 03/10/2022

Infraction

With the /infractions resource you access information related to the infractions detected in items, questions, answers and product opinion.

Consult ítems with under review status

Items with status under review have different sub-statuses: warning, waiting_for_patch, held, pending_documentation, forbidden and you can filter them by the status "pending".


Request:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/users/$USER_ID/items/search?status=pending

Example:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/users/123456/items/search?status=pending

Response:

{
    "seller_id": "123456",
    "query": null,
    "paging": {
        "limit": 50,
        "offset": 0,
        "total": 8
    },
    "results": [
        "MLC951993111",
        "MLC951803222",
        "MLC949619333",
        "MLC949606444",
        "MLC947744555",
        "MLC947725666",
        "MLC947725777",
        "MLC947699888"
    ],
    "orders": [...]
}

Learn more about Listings status and flow.

Notes:
- Before consulting a user's moderations we recommend you check the status of the items (https://api.mercadolibre.com/items/$ITEM_ID).
- When consulting a user's moderations: the response you will not see the items written out in duplicates and only the items in which the states can be final (forbidden) or temporary (waiting_for_patch, held, pending_documentation).
- If you want to check if a user is suspended, check https://api.mercadolibre.com/users/$USER_ID and you can check the status => list => allow through the api of users. In case that field is false, it means that it is suspended.

Preemptive paused for unusual price change

Publications detected with unusual price changes will be preventively set to status: paused and the moderation_penalty tag. To activate it, you must perform a PUT to /items with status: active, since this type of preventive moderation only pauses the publication. These items will not have status under review.

Request filtering items with moderation_penalty tag:

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

Example:

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

Response:

{
   "seller_id": "0123456789",
   "paging": {...},
   "results": [
       "MLA1147839589",
       "MLA1148439168",
       "MLA1149506534",
       "MLA1157034561",
       "MLA1164314507",
       "MLA1173423437"
   ],
   "orders": [...],
   "available_orders": [...]
}

Detail of the moderation for unusual price change

{
    "infractions": [
        {
            "id": "1008955725",
            "date_created": "2022-09-22T11:01:44.451-0400",
            "user_id": "1165408677",
            "related_item_id": "MLA1174435263",
            "element_id": "MLA1174435263",
            "element_type": "ITM",
            "site_id": "MLA",
            "filter_subgroup": "TP_OTROS",
            "reason": "La pausamos porque detectamos un cambio inusual en su precio. Verifica que sea el valor correcto antes de reactivarla.",
            "remedy": ""
        }
    ],
    "paging": {
        "offset": 0,
        "limit": 1,
        "total": 1
    },
    "sorting_type": "date_created_desc"
}

Finally, the seller must validate the price, edit it and activate the item.


Consult infractions of users

A seller's moderations can affect:

  • items
  • questions or answers
  • products review

We recommend that you identify the reason (reason) and solution (remedy) to apply in the language corresponding to the site of the violation or in English, and what's more, you can identify and summarize moderations for different reasons.


Request:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/moderations/infractions/$USER_ID

Example:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/moderations/infractions/12345678

Response:

{
    "infractions": [
       {
           "id": "1025647",
           "date_created": "2016-11-12T18:28:03.731Z",
           "user_id": "6540387",
           "related_item_id": "MLA642576340",
           "element_id": "MLA642576340",
           "element_type": "ITM",
           "site_id": "MLA",
           "filter_subgroup": "LINKS",
           "reason": "Tuvimos que borrar tu publicación porque ofrecías un producto que está prohibido por nuestra Política de Autopartes y repuestos.",
           "remedy": "Recuerda que las autopartes y repuestos usados están regulados por las leyes 25761, 24449 y sus decretos reglamentarios.

Si deseas obtener más información puedes consultar el sitio de DNRPA" }, ], "paging": { "offset": 0, "limit": 20, "total": 7 }, "sorting_type": "date_created_desc" }

Response fields

id: unique identifier of the infraction.
date_created: date the infraction occurred.
user_id: the user who carried out the infraction.
related_item_id: unique identifier of the post related to the item that owns the infraction. If the violation is in a post, the value of this attribute will equal the value of the element_id attribute.
element_id: unique identifier of the item that owns the violation. It is dependent on the element_type attribute.
element_type: type of element, the values can be: ITM (publication), QUE (questions and answers) and REV (reviews /product opinion).
subgroup: this field allows you to identify and summarize the moderations of the different filter groups. For example:

  • DOMAIN: bad categorization moderation
  • COMPATS: moderation due to lack of Compatibility (Autoparts).
  • PQT: bad quality pictures moderation
  • LINKS: moderation by including contact details or external links
  • CLASI: moderations in classifieds (vehicles, real estate, services)
  • BRAND_PROTECTION: moderation for reports made since Brand Protection Program and must be answered before expiration.
  • site_id: marketplace site of the item with the infraction.
    reason: text (html) that describes the reason and infractions policy.
    remedy: text (html) that indicates the action, only in cases where it is recoverable. For example, "Remove personal data from publication".
    suggested: are the suggestions if the infractions were for the filters:
    "MAL_CATEGORIZADO_CORE_A_CORE",
    "DOMAIN_WRONG_CATEG_V2",
    "DOMAIN_WRONG_CATEG_VENTAS_V2",
    "DOMAIN_WRONG_CATEG_CATALOGO",
    "DOMAIN_WRONG_CATEG_MANUAL",
    "DOMAIN_WRONG_CATEG_CBT_PICTURE_V2",
    "DOMAIN_WRONG_CATEG_VENTAS_CBT_PICTURE_V2",
    "DOMAIN_WRONG_CATEG_CBT_TEXT_V2",
    "DOMAIN_WRONG_CATEG_VENTAS_CBT_TEXT_V2",
    "WITHOUT_COMPATS",
    "BS_EXACT_DUPLICATE_COMPATS"


    Filter infractions

    Filter Description Options Default
    related_item_id Post ID associated with the infraction - -
    element_id Id of the moderate element - -
    element_type Moderate element type ITM (item)
    REV (review)
    QUE (question/aswer)
    -
    date_created_since Filtering start date Formato: YYYY-MM-DD -
    date_created_to Filtering end date Formato: YYYY-MM-DD -
    language You can request the reason and remedy texts in spanish or portuguese. The default language is english. ES (spanish) or PT (portuguese) English
    limit Number of infractions returned The value is from 1 to 20 20
    offset Offset para el paginado 0
    sort Sort results by creation date ascending or descending date_created_asc, date_created_desc date_created_desc

    Request:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/moderations/infractions/$USER_ID?date_created_since=AAAA-MM-DD&limit=XX&offset=X

    Example:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/moderations/infractions/12345678?date_created_since=2020-12-15&limit=1&offset=0

    Response:

    {
       "infractions": [
           {
               "id": "594794188",
               "date_created": "2020-10-28T01:43:32.414-0400",
               "user_id": "12345678",
               "related_item_id": "MLA169211231",
               "element_id": "MLA169211232",
               "element_type": "ITM",
               "site_id": "MLA",
               "reason": "La anulamos porque la categoría en elegiste no corresponde con tu foto de portada o título.",
               "remedy": "Modifica la categoría de tu publicación para que se corresponda con tu título y foto de portada."
           }],
       "paging": {
           "offset": 0,
           "limit": 1,
           "total": 20671
       },
       "sorting_type": "date_created_desc"
    }

    Check infractions of pictures

    Items with the poor_quality_thumbnail tag were validated by Mercado Libre and do not meet any image requirement. Please, identify it and improve these. Learn more about the Item Search resource and the importance of photos for sellers.


    Request:

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

    Response:

    {
        "itemID": "MLA0111111",
        "quality": "good",
        "thumbnail": "344725-MLA25503040734_042017",
        "conditions": [
            {
                "id": "white_background",
                "passed": true
            },
            {
                "id": "minimum_size",
                "passed": true
            },
            {
                "id": "logo_text_watermark",
                "passed": true
            },
            {
                "id": "unprofessional_photo",
                "passed": true
            }
        ],
        "taggedDate": "2019-05-02T07:27:40Z"
    }

    Response fields

    itemID: listing ID.
    quality: picture quality may take “good” or “poor” values to define a “good picture” or “bad picture” status, respectively.
    thumbnail: picture with which the item was processed corresponds to the item thumbnail.
    conditions: set of conditions to be met by an item to determine picture quality. A condition consists of an ID (with a brief definition of the analyzed aspects) and a passed attribute, a Boolean value that defines whether or not the picture meets the condition.
    taggedDate: date of latest item processing.


    Possible Condition IDs

    minimum_size: evaluate if any of the images in the publication exceed the minimum 500 x 500 px.
    logo_text_watermark: evaluate whether the first image of the publication contains logos, text, promotional banners or watermarks.
    white_background: evaluate if the first image of the publication has a pure white background. In other words, a white background created with an image editor, instead of a product photo in front of a wall or other element.
    multiproduct: evaluate if the first image contains more than one product. For example, we do not allow the first image of the publication to contain several pairs of shoes.
    blur: evaluate that the images in the publication are not blurry.
    unprofessional_photo: it is executed when the rest of the validations are negative and evaluates three conditions at the same time: multiproduct, white background and logos. It does not mean that the image meets all three, but may not be complying with any of the three.
    rollbacked: this validation is reserved for the customer service team. We use it when a seller contacts to claim for incorrect detections (false positive). Once applied, the photo is not re-moderated, unless the seller changes the image.


    Errors

    In case of receiving a 404 error - "No picture tagged for item (Item_id)" because the item could not be validated, we recommend you improve the image with the following resource.


    Improve pictures

    Request:

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

    Response:

    {
      "reason": "Para recuperar tu exposición, corregí tus fotos
    • Asegurate de que la primera imagen de tu producto tenga como mínimo 500 píxeles en uno de los lados. Te recomendamos usar 1200 x 1200, para que puedan hacer zoom.
    ", "conditions": [ { "id": "sizePictures", "message": "Asegurate de que la primera imagen de tu producto tenga como mínimo 500 píxeles en uno de los lados. Te recomendamos usar 1200 x 1200, para que puedan hacer zoom." } ] }
    Nota:
    When you correct the image of a publication that has been moderated, the validations will be carried out again, and if they are positive, the tag will be removed, and it will recover its original exposure.

    Learn more about how work with pictures.


    Add poor_quality_thumbnail tag in test item

    To add the tag "poor_quality_thumbnail" to a test item, load your test user data into the form.


    Next topic: Brand Protection Program.