Giter VIP home page Giter VIP logo

net-sdk's Introduction

MercadoLibre's .NET SDK

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

How do I install it?

You can download the latest build at: http://github.com/mercadolibre/net-sdk/downloads

And that's it!

How do I start using 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

Meli m = new Meli(1234, "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 no JSON parsing. This is left to you. But this SDK uses json.net library for internal usage.

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:

string redirectUrl = m.GetAuthUrl(Meli.AuthUrls.MLB,"http://somecallbackurl"); //Don't forget to set the autentication URL of your country

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.

m.Authorize("the received code", "http://somecallbackurl");

This will get an accessToken and a refreshToken (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

var p = new Parameter ();
p.Name = "access_token";
p.Value = m.AccessToken;

var ps = new List<Parameter> ();
ps.Add (p);
IRestResponse response = m.Get ("/users/me", ps);

Making POST calls

var p = new Parameter ();
p.Name = "access_token";
p.Value = m.AccessToken;

var ps = new List<Parameter> ();
ps.Add (p);
IRestResponse r = m.Post ("/items", ps, new {foo="bar"});

Making PUT calls

var p = new Parameter ();
p.Name = "access_token";
p.Value = m.AccessToken;

var ps = new List<Parameter> ();
ps.Add (p);
IRestResponse r = m.Put ("/items/123", ps, new {foo="bar"});

Making DELETE calls

var p = new Parameter ();
p.Name = "access_token";
p.Value = m.AccessToken;

var ps = new List<Parameter> ();
ps.Add (p);
IRestResponse r = m.Delete ("/items/123", ps);

Do I always need to include the access_token as a parameter?

No. Actually most GET requests don't need an access_token and it is easier to avoid them and also it is better in terms of caching. But this decision is left to you. You should decide when it is necessary to include it or not.

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.

To run the tests run make test.

You'll need nodejs in order to run the tests. We use it to mock the API.

Thanks for helping!

net-sdk's People

Contributors

aleml86 avatar phaael avatar tioborracho avatar xetorthio avatar zeusmode avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.