• This repository has been archived on 10/Feb/2022
  • Stars
    star
    184
  • Rank 209,187 (Top 5 %)
  • Language
    PHP
  • Created over 12 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MercadoLibre's PHP SDK

No longer maintained

[DEPRECATED] This repository is no longer maintained

From the first week of April 2021 we will stop maintaining our SDKs.

This project is not functional, the dependencies will not be updated to latest ones.

We recommend you read our documentation.

Mercado Libre Developers

Mercado Libre Developers

MercadoLibre's PHP SDK

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

Requirements

PHP 5.5 and later

Installation & Usage

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://github.com/mercadolibre/php-sdk.git"
    }
  ],
  "require": {
    "mercadolibre/php-sdk": "*@dev"
  }
}

Then run composer install

Manual Installation

Download the files

Run composer install

Include autoload.php in your code:

    require_once('/path-to-integration-folder/vendor/autoload.php');

Tests

To run the unit tests:

composer install
./vendor/bin/phpunit

Usage

<?php
require_once(__DIR__ . '/vendor/autoload.php');

$config = new Meli\Configuration();
$servers = $config->getHostSettings();
// Auth URLs Options by country

// 1:  "https://auth.mercadolibre.com.ar"
// 2:  "https://auth.mercadolivre.com.br"
// 3:  "https://auth.mercadolibre.com.co"
// 4:  "https://auth.mercadolibre.com.mx"
// 5:  "https://auth.mercadolibre.com.uy"
// 6:  "https://auth.mercadolibre.cl"
// 7:  "https://auth.mercadolibre.com.cr"
// 8:  "https://auth.mercadolibre.com.ec"
// 9:  "https://auth.mercadolibre.com.ve"
// 10: "https://auth.mercadolibre.com.pa"
// 11: "https://auth.mercadolibre.com.pe"
// 12: "https://auth.mercadolibre.com.do"
// 13: "https://auth.mercadolibre.com.bo"
// 14: "https://auth.mercadolibre.com.py"

// Use the correct auth URL
$config->setHost($servers[1]["url"]);

// Or Print all URLs
print_r($servers);

// Or Print or Put the following URL in your browser window to obtain authorization:
//
// http://auth.mercadolibre.com.ar/authorization?response_type=code&client_id=$APP_ID&redirect_uri=$YOUR_URL
?>

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

Examples for OAuth - get token

<?php
require_once(__DIR__ . '/vendor/autoload.php');


$apiInstance = new Meli\Api\OAuth20Api(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client()
);
$grant_type = 'authorization_code';
$client_id = 'client_id_example'; // Your client_id
$client_secret = 'client_secret_example'; // Your client_secret
$redirect_uri = 'redirect_uri_example'; // Your redirect_uri
$code = 'code_example'; // The parameter CODE
$refresh_token = 'refresh_token_example'; // Your refresh_token

try {
    $result = $apiInstance->getToken($grant_type, $client_id, $client_secret, $redirect_uri, $code, $refresh_token);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling OAuth20Api->getToken: ', $e->getMessage(), PHP_EOL;
}
?>

Example using the RestClient with a POST Item

<?php
require_once(__DIR__ . '/vendor/autoload.php');


$apiInstance = new Meli\Api\RestClientApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client()
);
$resource = 'resource_example'; // string | for example: items
$access_token = 'access_token_example'; // string |
$body = new \stdClass; // object |

try {
    $apiInstance->resourcePost($resource, $access_token, $body);
} catch (Exception $e) {
    echo 'Exception when calling RestClientApi->resourcePost: ', $e->getMessage(), PHP_EOL;
}
?>

Documentation & Important notes

The URIs are relative to https://api.mercadolibre.com
The Authorization URLs (set the correct country domain): https://auth.mercadolibre.{country_domain}
All docs for the library are located here
Check out our examples codes in the folder examples
Don’t forget to check out our developer site

More Repositories

1

chico

A collection of easy-to-use UI components.
JavaScript
343
star
2

golang-restclient

An extremely simple to use, lightweight, yet powerful REST Client
Go
149
star
3

python-sdk

MercadoLibre's Python SDK
Python
131
star
4

net-sdk

MercadoLibre's .NET SDK
C#
56
star
5

mercadolibre.js

MercadoLibre API Client
49
star
6

java-sdk

MercadoLibre's Java SDK
Java
46
star
7

java-restclient

A lightweight REST client implementation for Java 1.7+.
Java
37
star
8

cacique

mercadolibre's Cacique is a automation test tool distribuited under gpl licence. BETA Version
JavaScript
32
star
9

fury-core-ci

Github actions for Fury Core applications
TypeScript
31
star
10

flamepool

Go
29
star
11

polp-fiction-metrics

polp-fiction-metrics
Python
28
star
12

ruby-sdk

MercadoLibre's Ruby SDK
Ruby
25
star
13

golang-sdk

MercadoLibre's Golang SDK
Go
24
star
14

mobile-dependencies_whitelist

Whitelist dependencies files for mobile teams
Ruby
23
star
15

meli-card-drawer-ios

Meli Card Drawer iOS - Shared credit card UI component
Swift
22
star
16

meli-card-drawer-android

Meli Card Drawer Android - Shared credit card UI component
Kotlin
19
star
17

nodejs-sdk

JavaScript
18
star
18

MPTopFloatingView

Objective-C
17
star
19

toiler

Toiler is a AWS SQS long-polling thread-based message processor.
Ruby
16
star
20

ubatch

uBatch is a simple, yet elegant library for processing streams data in micro batches.
Python
15
star
21

tiny.js

A JavaScript utility library oriented to real world tasks
JavaScript
13
star
22

workshop-docker-fullstack2017

workshop-docker-fullstack2017
CSS
11
star
23

piper

A minimal pipeline library for golang
Go
10
star
24

MPDynamicSkeleton

Modularized skeleton with gradient animation
Swift
10
star
25

assimilator

A Restful JSON API that controls policies and routes from different firewall brands.
Python
9
star
26

cx-frontend-challenge

JavaScript
9
star
27

payment-methods-component

CSS
9
star
28

workshop-docker

Meli Docker Workshop
JavaScript
8
star
29

arcanist-extensions

PHP
8
star
30

resilience-workshop-api

Java
8
star
31

mlbusiness-components-ios

Shared Business UI components
Swift
7
star
32

java-circuit-breaker

Circuit breaker for Java 1.7+.
Java
7
star
33

fury_mobile-ios-ui

Objective-C
6
star
34

seamless-iframe

A fallback that emulates the main features of the seamless iframe.
JavaScript
6
star
35

flexbuffer-node

Node based library that gives you a variety of options for buffer optimization.
JavaScript
6
star
36

card-form-android

Kotlin
5
star
37

srt

Python
5
star
38

workshop_python_brasil_2021

HTML
4
star
39

fury-little_monster-gem

Ruby
4
star
40

card-form-ios

Swift
4
star
41

HadoopCryptoCompressor

Crypto compressor for hdfs that enable to compress with public key any file into hdfs
Java
4
star
42

java-metrics

This interface helps you to collect, measure and record metrics in Java applications
Java
4
star
43

java-json

A Json interface for Java applications
Java
3
star
44

java-sdk-repo

MercadoLibre's Java SDK Maven Repository
2
star
45

MLDynamicModal

Custom modal for iOS with swipe, tap and button dismiss recognizer
Objective-C
2
star
46

productidentifiers-frontend-demo

CSS
2
star
47

mlbusiness-components-android

Java
2
star
48

grails-esi

An ESI plugin for grails
Groovy
2
star
49

point-mainapp-demo-android

Kotlin
1
star
50

fury_device-sdk-ios

Swift
1
star
51

presentacion-plataformas-lenguajes-web

JavaScript
1
star
52

curso_ios_lp

curso ios - ejercicios
Objective-C
1
star