Documentação do Mercado Livre

Confira todas as informações necessárias sobre as APIs Mercado Livre.
circulos azuis em degrade

Documentação do

Última atualização em 29/04/2025

Consulta de usuários

Se já registrou, autenticou e gerou um usuário teste para a sua aplicação, o próximo passo é aprender a trabalhar com usuários (vendedores e compradores).


Cadastre-se como imobiliária (opcional)

Se é uma imobiliária, poderá registrar-se como tal para ter acesso aos nossos pacotes promocionais para imobiliárias. Para fazer isso, entre na seção Contato > Configuração da minha conta > Cadastre-se como empresa, concessionária e imobiliária.



Ao clicar em "Como imobiliária", verá o formulário "Solicite seu cadastro como imobiliária". Preencha os dados solicitados e clique em "Enviar". Este passo não pode ser acessá-lo pela API, mas poderá vê-lo uma vez que estiver registrado como imobiliária.


Consultar meus dados pessoais

Se estiver conecta em sua conta do Mercado Livre e tiver um token poderá fazer a seguinte chamada e conhecer qual informação está relacionada ao seu usuário:


Exemplo:

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

Resposta:

{
  "id": 202593498,
  "nickname": "TETE2870021",
  "registration_date": "2016-01-06T11:31:42.000-04:00",
  "first_name": "Test",
  "last_name": "Test",
  "country_id": "AR",
  "email": "test_user_50698062@testuser.com",
  "identification": {
  "type": "DNI",
  "number": "1111111"
  },
  "address": {
  "state": "AR-C",
  "city": "Palermo",
  "address": "Test Address 123",
  "zip_code": "1414"
  },
  "phone": {
  "area_code": "01",
  "number": "1111-1111",
  "extension": "",
  "verified": false
  },
  "alternative_phone": {
  "area_code": "",
  "number": "",
  "extension": ""
  },
  "user_type": "real_estate_agency",
  "tags": [
  "real_estate_agency",
  "test_user",
  "user_info_verified"
  ],
  "logo": null,
  "points": 100,
  "site_id": "MLA",
  "permalink": "http://perfil.mercadolibre.com.ar/TETE2870021",
  "seller_experience": "ADVANCED",
  "seller_reputation": {
  "level_id": null,
  "power_seller_status": null,
  "transactions": {
    "period": "historic",
    "total": 0,
    "completed": 0,
    "canceled": 0,
    "ratings": {
      "positive": 0,
      "negative": 0,
      "neutral": 0
    }
  }
  },
  "buyer_reputation": {
  "canceled_transactions": 0,
  "transactions": {
    "period": "historic",
    "total": null,
    "completed": null,
    "canceled": {
      "total": null,
      "paid": null
    },
    "unrated": {
      "total": null,
      "paid": null
    },
    "not_yet_rated": {
      "total": null,
      "paid": null,
      "units": null
    }
  },
  "tags": [
  ]
  },
  "status": {
  "site_status": "active",
  "list": {
    "allow": true,
    "codes": [
    ],
    "immediate_payment": {
      "required": false,
      "reasons": [
      ]
    }
  },
  "buy": {
    "allow": true,
    "codes": [
    ],
    "immediate_payment": {
      "required": false,
      "reasons": [
     ]
    }
  },
  "sell": {
    "allow": true,
    "codes": [
    ],
    "immediate_payment": {
      "required": false,
      "reasons": [
      ]
    }
  },
  "billing": {
    "allow": true,
    "codes": [
    ]
  },
  "mercadopago_tc_accepted": true,
  "mercadopago_account_type": "personal",
  "mercadoenvios": "not_accepted",
  "immediate_payment": false,
  "confirmed_email": false,
  "user_type": "eventual",
  "required_action": ""
  },
  "credit": {
  "consumed": 100,
  "credit_level_id": "MLA1"
  }
}

Consultar informação pública de um usuário

Com o id do usuário poderá realizar a chamada ao recurso de user da seguinte maneira para obter informações públicas do usuário que deseja consultar:


Chamada:

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

Exemplo:

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

Resposta:

{
  "id": 202593498,
  "nickname": "TETE2870021",
  "registration_date": "2016-01-06T11:31:42.000-04:00",
  "country_id": "AR",
  "address": {
    "state": "AR-C",
    "city": "Palermo"
  },
  "user_type": "normal",
  "tags": [
    "normal",
    "test_user",
    "user_info_verified"
  ],
  "logo": null,
  "points": 100,
  "site_id": "MLA",
  "permalink": "http://perfil.mercadolibre.com.ar/TETE2870021",
  "seller_reputation": {
    "level_id": null,
    "power_seller_status": null,
    "transactions": {
      "period": "historic",
      "total": 0,
      "completed": 0,
      "canceled": 0,
      "ratings": {
        "positive": 0,
        "negative": 0,
        "neutral": 0
      }
    }
  },
  "buyer_reputation": {
    "tags": []
  },
  "status": {
    "site_status": "active"
  }
}

Consultar informação privada de um usuário que aceitou o uso da minha aplicação

Para obter os dados privados de um usuário, é só ativar o ACCESS_TOKEN do usuário no final da chamada que fez anteriormente.


Chamada:

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

Exemplo:

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

Resposta:

{
  "id": 202593498,
  "nickname": "TETE2870021",
  "registration_date": "2016-01-06T11:31:42.000-04:00",
  "first_name": "Test",
  "last_name": "Test",
  "country_id": "AR",
  "email": "test_user_50698062@testuser.com",
  "identification": {
    "type": "DNI",
    "number": "1111111"
  },
  "address": {
    "state": "AR-C",
    "city": "Palermo",
    "address": "Test Address 123",
    "zip_code": "1414"
  },
  "phone": {
    "area_code": "01",
    "number": "1111-1111",
    "extension": "",
    "verified": false
  },
  "alternative_phone": {
    "area_code": "",
    "number": "",
    "extension": ""
  },
  "user_type": "normal",
  "tags": [
    "normal",
    "test_user",
    "user_info_verified"
  ],
  "logo": null,
  "points": 100,
  "site_id": "MLA",
  "permalink": "http://perfil.mercadolibre.com.ar/TETE2870021",
  "seller_experience": "ADVANCED",
  "seller_reputation": {
    "level_id": null,
    "power_seller_status": null,
    "transactions": {
      "period": "historic",
      "total": 0,
      "completed": 0,
      "canceled": 0,
      "ratings": {
        "positive": 0,
        "negative": 0,
        "neutral": 0
      }
    }
  },
  "buyer_reputation": {
    "canceled_transactions": 0,
    "transactions": {
      "period": "historic",
      "total": null,
      "completed": null,
      "canceled": {
        "total": null,
        "paid": null
      },
      "unrated": {
        "total": null,
        "paid": null
      },
      "not_yet_rated": {
        "total": null,
        "paid": null,
        "units": null
      }
    },
    "tags": []
  },
  "status": {
    "site_status": "active",
    "list": {
      "allow": true,
      "codes": [],
      "immediate_payment": {
        "required": false,
        "reasons": []
      }
    },
    "buy": {
      "allow": true,
      "codes": [],
      "immediate_payment": {
        "required": false,
        "reasons": []
      }
    },
    "sell": {
      "allow": true,
      "codes": [],
      "immediate_payment": {
        "required": false,
        "reasons": []
      }
    },
    "billing": {
      "allow": true,
      "codes": []
    },
    "mercadopago_tc_accepted": true,
    "mercadopago_account_type": "personal",
    "mercadoenvios": "not_accepted",
    "immediate_payment": false,
    "confirmed_email": false,
    "user_type": "eventual",
    "required_action": ""
  },
  "credit": {
    "consumed": 100,
    "credit_level_id": "MLA1"
  }
}

Usuário Vendedor S = P (sell equal pay)

Se quiser que todas as suas operações sejam exclusivamente através do Mercado Pago, deverá indicar na informação do seu usuário que aceita apenas a modalidade S = P (sell equal pay). Desta forma ficará desabilitada a opção de "Combinar com o vendedor".

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-type: application/json" -d 

'{
    "reason": "by_user"
}'

https://api.mercadolibre.com/users/$USER_ID/immediate_payment

Se não quiser mais aceitar apenas Mercado Pago, poderá eliminar a marca da seguinte forma:

curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/users/$USER_ID/immediate_payment/by_user

Endpoint block-api/search/users: Consultar usuários bloqueados para pedidos e perguntas:

O endpoint block-api/search/users permite consultar bloqueios associados a um usuário (Comprador) específico, retornando informações sobre o estado do bloqueio. Os serviços de bloqueio de perguntas e pedidos foram unificados em um único endpoint.

  • Blocked_by_questions: Para bloqueios relacionados a perguntas.
  • Blocked_by_order: Para bloqueios relacionados a pedidos.
Parâmetro TIPO Obrigatório Descrição
client.id string Opcional ID do cliente que realiza a solicitação
type string Obrigatório Tipo de bloqueio: blocked_by_questions ou blocked_by_order.
user_blocked int Opcional ID do usuário bloqueado (Comprador).
caller.id string Obrigatório ID do usuário que faz a solicitação.
offset int opcional padrão: 0
limit int opcional máximo 1000, padrão: 10

Chamada:


curl -X GET  'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/block-api/search/users/{user_id}

Exemplo de solicitação: blocked_by_questions


curl -X GET - location 'https://api.mercadolibre.com/block-api/search/users/123456?type=blocked_by_questions' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'

Resposta:


{
  "users": [
    {
      "id": 123456,
      "blocked_at": "2024-02-07T15:04:05Z"
    }
  ],
  "paging": {
    "offset": 0,
    "limit": 10,
    "total": 1
  }
}

Código de Status: 200 OK - A solicitação foi processada com sucesso.


Exemplo de solicitação: blocked_by_order


curl -X GET -location 'https://api.mercadolibre.com/block-api/search/users/123456?type=blocked_by_order' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'

Resposta:


{
  "users": [
    {
      "id": 123456,
      "blocked_at": "2024-02-07T15:04:05Z"
    }
  ],
  "paging": {
    "offset": 0,
    "limit": 10,
    "total": 1
  }
}

Código de Status: 200 OK - A solicitação foi processada com sucesso.


Exemplo de Resposta Sem Bloqueios (blocked_by_questions ou blocked_by_order)

Resposta:


{ "users": [],
 "paging": { 
"total": 0, 
"limit": 10,
 "offset": 0 } 
}



  • users: Indica que não há usuários bloqueados relacionados nem com perguntas nem com pedidos para o usuário solicitado.
  • paging: Mostra que não há resultados, com total igual a 0.

Campos da Resposta:

Campo Tipo Descrição
users.id int ID do usuário bloqueado.
users.blocked_at string Data e hora da criação do bloqueio.
paging.offset int Número de bloqueios omitidos antes de retornar os resultados.
paging.limit int Quantidade máxima de bloqueios a recuperar (padrão 10, máximo 1000).
paging.total int Total de bloqueios recuperados.