Free shipping
Contents
→Shipping modes →Dimensions and types of shipments →Calculate free shipping costs by user & item dimensions →Calculate free shipping costs by user & item_id →Calculate free shipping costs by item →Calculate free shipping costs before listing items →Products with free shipping →Offer free_shipping mode for the all country →Offer free_shipping for custom shipping →Remove free shipping
Shipping modes
curl -X GET https://api.mercadolibre.com/users/$USER_ID/shipping_modes?category_id=$CATEGORY_ID
This resource will return the shipping configuration available to the seller for a specific category.
Response:
{
"mode": "me2",
"shipping_attributes": {
"costs": "not_allowed",
"dimensions": "clear",
"free": {
"methods": "optional",
"accepted_methods": [100009,182],
"rules": [{
"free_mode":"exclude_region",
"value": [’BR-NO’, ’BR-NE’],
"default": true,
"free_shipping_flag": false
},{
"free_mode":"country",
"value": null,
"default": false,
"free_shipping_flag": true
}]
}
}
Dimensions and types of shipments
You can know, through a GET request, the standard dimensions of the category of shipments (weight, height, width and depth) and the types of logistics supported in that category. When the dimensions of the product are not specified, you must perform the calculation based on the standard dimensions.
Request:
curl -X GET https://api.mercadolibre.com/categories/$CATEGORY_ID/shipping_preferences
Example:
curl -X GET https://api.mercadolibre.com/categories/MLM165702/shipping_preferences
Response:
{
"dimensions": {
"height": 10,
"width": 10,
"length": 15,
"weight": 500
},
"logistics": [
{
"types": [
"default"
],
"mode": "me1"
},
{
"types": [
"drop_off",
"xd_drop_off",
"self_service",
"cross_docking",
"fulfillment"
],
"mode": "me2"
},
{
"types": [
"not_specified"
],
"mode": "not_specified"
},
{
"types": [
"custom"
],
"mode": "custom"
}
],
"restricted": false,
"source": {
"origin": "categories",
"identifier": "MLM165702"
},
"date_created": null,
"last_modified": null,
"category_id": "MLM165702"
}
Calculate free shipping costs by user & item dimensions
Example:
curl -X GET https://api.mercadolibre.com/users/4422224/shipping_options/free?dimensions=10x10x10,500
Response:
{
"coverage": {
"all_country": {
"list_cost": 97,
"currency_id": "MXN"
}
}
}
Calculate free shipping costs by user & item_id
Example:
curl -X GET https://api.mercadolibre.com/users/4422224/shipping_options/free?item_id=MLM531425223
{
"coverage": {
"all_country": {
"list_cost": 97,
"currency_id": "MXN"
}
}
}
Calculate free shipping costs by item
Example:
curl -X GET https://api.mercadolibre.com/items/MLB739217081/shipping_options/free
Response:
{
"coverage": {
"all_country": {
"list_cost": 14.02,
"currency_id": "BRL"
}
}
}
Use multiget to calculate the cost of free shipping up to 50 items on one API call:
Example:
curl -X GET https://api.mercadolibre.com/items/shipping_options/free?ids=MLM531425223,MLM537956425,MLM537955922
Response:
{
"MLM537955922": {
"coverage": {
"all_country": {
"list_cost": 140,
"currency_id": "MXN"
}
}
},
"MLM531425223": {
"coverage": {
"all_country": {
"list_cost": 97,
"currency_id": "MXN"
}
}
},
"MLM537956425": {
"coverage": {
"all_country": {
"list_cost": 105,
"currency_id": "MXN"
}
}
}
}
Calculate free shipping costs before listing items
Use this resource to calculate free shipping costs before listings. For this it is necessary that you report some parameters:
currency_id: currency. listing_type_id: listing type. condition: product condition. category_id: category ID that will list. item_price: product price. dimensions: product dimensions (height x width x depth, weight). In case you don't have them, you can check the category information in the /shipping_preferences resource.
Request:
curl -X GET https://api.mercadolibre.com/users/$USER_ID/shipping_options/free?currency_id=$CURRENCY_ID&listing_type_id=$LISTING_TYPE_ID&condition=$CONDITION&category_id=$CATEGORY_ID&item_price=$ITEM_PRICE&verbose=true&dimensions=$DIMENSIONS
Example:
curl -X GET https://api.mercadolibre.com/users/378277780/shipping_options/free?currency_id=BRL&listing_type_id=gold_pro&condition=new&category_id=MLB26426&item_price=80&verbose=true&dimensions=15x30x5,150
Response:
{
"coverage": {
"all_country": {
"list_cost": 30.9,
"currency_id": "BRL",
"billable_weight": 150,
"discount": {
"rate": 0,
"type": "none",
"promoted_amount": 0
}
}
}
}
Products with free shipping
In the product, you cans see property "métodos" were replaced with "free_methods", when "free_shipping" is true. For Mercado Livre Brasil, we automatically exclude north, northeast and riesg areas when select "free_mode": "country" option.
Offer free_shipping for custom shipping
Example:
{
"title": "Titulo del item",
...
"shipping": {
"mode": "me2",
"local_pick_up": false,
"free_methods": [
{
"id": 100009,
"rule": {
"free_mode": "country",
"value": null
}
}
]
}
}
Offer free_shipping mode for the all country
Ejemplo:
{
"title": "Titulo del item",
...
"shipping": {
"mode": "me2",
"local_pick_up": false,
"free_methods": [
{
"id": 100009,
"rule": {
"free_mode": "country",
"value": null
}
}
]
}
}
Offer free_shipping for custom shipping
For countries where Mercado Envíos is active you can add custom shipping free in categories that do not accept ME.
"shipping": {
"mode": "not_specified",
"local_pick_up": false,
"free_shipping": true,
"methods": [],
"costs": []
}
Remove free shipping
To remove free shipping from your publication, you should change the value of ‘’free_shipping’’ to ‘’false’’, and send the array of ‘’free_methods’’ empty, eliminating the shipping configuration that is applicated to the item.
Exemple with ME2:
"shipping": {
"mode": "me2",
"local_pick_up": false,
"free_shipping": false,
"methods": []
}