Skip to main content

Mercado Livre API

Project description

MercadoLibre's Python SDK

This is the official Python SDK for MercadoLibre's Platform.

How do I install it?

   clone repository
   https://github.com/mercadolibre/python-sdk.git

How do I use it?

The first thing to do is to instance a Meli class. You'll need to give a clientId and a clientSecret. You can obtain both after creating your own application. For more information on this please read: creating an application

Including the Lib

Include the lib meli in your project

Attention

Don't forget to set the authentication URL of your country in file lib/config.ini

import sys
sys.path.append('../lib')
from meli import Meli

Start the development!

Create an instance of Meli class

Simple like this

meli = Meli(client_id=1234, client_secret="a secret")

With this instance you can start working on MercadoLibre's APIs.

There are some design considerations worth to mention.

  1. This SDK is just a thin layer on top of an http client to handle all the OAuth WebServer flow for you.

  2. There is JSON parsing. this SDK will include json for internal usage.

  3. If you already have the access_token and the refresh_token you can pass in the constructor

meli = Meli(client_id=1234, client_secret="a secret", access_token="Access_Token", refresh_token="Refresh_Token")

How do I redirect users to authorize my application?

This is a 2 step process.

First get the link to redirect the user. This is very easy! Just:

redirectUrl = meli.auth_url(redirect_URI="http://somecallbackurl")

This will give you the url to redirect the user. You need to specify a callback url which will be the one that the user will redirected after a successfull authrization process.

Once the user is redirected to your callback url, you'll receive in the query string, a parameter named code. You'll need this for the second part of the process.

meli.authorize(code="the received code", redirect_URI="http://somecallbackurl")

This will get an access_token and a refresh_token (is case your application has the offline_access) for your application and your user.

At this stage your are ready to make call to the API on behalf of the user.

Making GET calls

params = {'access_token' : meli.access_token}
response = meli.get(path="/users/me", params=params)

Making POST calls

params = {'access_token' : meli.access_token}

  #this body will be converted into json for you
body = {'foo'  : 'bar', 'bar' : 'foo'}

response = meli.post(path="/items", body=body, params=params)

Making PUT calls

params = {'access_token' : meli.access_token}

  #this body will be converted into json for you
body = {'foo'  : 'bar', 'bar' : 'foo'}

response = meli.put(path="/items/123", body=body, params=params)

Making DELETE calls

params = {'access_token' : meli.access_token}
response = meli.delete(path="/questions/123", params=params)

Examples

Don't forget to check out our examples codes in the folder examples

Community

You can contact us if you have questions using the standard communication channels described in the developer's site

I want to contribute!

That is great! Just fork the project in github. Create a topic branch, write some code, and add some tests for your new code.

Thanks for helping!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

mlapi-1.3.8-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file mlapi-1.3.8-py3-none-any.whl.

File metadata

  • Download URL: mlapi-1.3.8-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.9.1 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.5

File hashes

Hashes for mlapi-1.3.8-py3-none-any.whl
Algorithm Hash digest
SHA256 44d4abfe919c9c8188a99bbc03cdc27a5d149b7fb30d97a21713d9a3ca6b14d4
MD5 bc8382019d872a0366f84c8d7e667bd0
BLAKE2b-256 f803139bca46523e3290a5b4488a5883c99946f04fba05816af70ebb9945bc35

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page