SlideShare uma empresa Scribd logo
1 de 61
Baixar para ler offline
API – CONCEITOS GERAIS 
Danilo Santos 
Engenheiro de Software do MercadoLivre
Developer Conference 
Agenda 
- API 
- RESTful 
- JSON 
- Categorias 
- Anúncios 
- Perguntas 
- Pedidos 
- Qualificações 
- Buscas
Developer Conference 
O que é uma API? 
A - Application 
P - Programming 
I - Interface
Developer Conference 
RESTful 
GET 
POST 
PUT 
DELETE
Developer Conference 
RESTful - HTTPS
Developer Conference 
JSON
Developer Conference 
JSON 
"A mesma praça… o mesmo banco..."
Developer Conference 
JSON 
{ 
"title": "Apple Iphone 5s 16gb 4g Original Promoção", 
"category_id": "MLB123612", 
"price": 2000, 
"currency_id": "BRL", 
"initial_quantity": 50, 
"buying_mode": "buy_it_now", 
"listing_type_id": "gold_premium", 
"condition": "new", 
"pictures": { "source": "http://static.hsw.com.br/gif/how-buildings-58.jpg"}, 
"video_id": null, 
"descriptions": "item: <strong> Iphone 5s Imperdível!!! </strong>" 
}
Developer Conference 
Agenda 
- API 
- RESTful 
- JSON 
- Categorias 
- Anúncios 
- Perguntas 
- Pedidos 
- Qualificações 
- Buscas
Developer Conference 
Categorias
Developer Conference 
Categorias
Developer Conference 
Categorias
Developer Conference 
Categorias
Developer Conference 
Categorias
Developer Conference 
Categorias
Developer Conference 
Categorias 
https://api.mercadolibre.com/sites/MLB
Developer Conference 
Anúncios 
https://api.mercadolibre.com/items
Developer Conference 
POST /items - Cadastrar um anúncio 
- Título 
- Categoria 
- Preço 
- Quantidade 
- Nível de exposição 
- Imagens 
- Descrição
Developer Conference 
POST /items - Cadastrar um anúncio 
JSON enviado: 
{ 
"title": "Apple Iphone 5s 16gb 4g Original Promoção", 
"category_id": "MLB123612", 
"price": 2000, 
"currency_id": "BRL", 
"initial_quantity": 50, 
"listing_type_id": "silver", 
"condition": "new", 
"pictures": { "source": "http://static.hsw.com.br/gif/how-to-draw-buildings-58.jpg"}, 
"video_id": null, 
"descriptions": "item: <strong> Iphone 5s Imperdível!!! </strong>",
Developer Conference 
POST /items - Cadastrar um anúncio 
APP 
POST
Developer Conference 
POST /items - Cadastrar um anúncio 
APP 
POST 
APP 
201 Created
Developer Conference 
POST /items - Cadastrar um anúncio 
JSON de retorno: 
{ 
"id": "MLB568033554", 
"site_id": "MLB", 
"title": "Apple Iphone 5s 16gb 4g Desbloqueado Original Promoção", 
"price": 2179, 
"currency_id": "BRL", 
"listing_type_id": "silver", 
"condition": "new", 
"permalink": "http://produto.mercadolivre.com.br/MLB-568033554-iphone-5s-original-_JM",
Developer Conference 
PUT /items/:id - Modificar um anúncio 
https://api.mercadolibre.com/items/MLB568033554
Developer Conference 
PUT /items/:id - Modificar um anúncio 
JSON enviado: 
{ 
"title": "Apple Iphone 5s 32gb Promoção", 
"price": 1900, 
}
Developer Conference 
PUT /items/:id - Modificar um anúncio 
APP 
PUT
Developer Conference 
PUT /items/:id - Modificar um anúncio 
APP 
PUT 
APP 
200 Ok
Developer Conference 
PUT /items/:id - Modificar um anúncio 
JSON de retorno: 
{ 
"id": "MLB568033554", 
"site_id": "MLB", 
"title": "Apple Iphone 5s 32gb Promoção", 
"price": 1900, 
"currency_id": "BRL", 
"listing_type_id": "silver", 
"condition": "new", 
"permalink": "http://produto.mercadolivre.com.br/MLB-568033554-iphone-5s-original-_JM",
Developer Conference 
PUT /items/:id - Modificar um anúncio 
Campos que podem ser modificados: 
- Título 
- Quantidade disponível 
- Preço 
- Video 
- Imagens 
- Descrição 
- Modo de Envio
Developer Conference 
PUT /items/:id - Modificar um anúncio 
Campos que NÃO podem ser modificados 
após uma venda do produto: 
- Título 
- Condição (novo/usado) 
- Método de Envio 
- Video 
- Garantia
Developer Conference 
PUT /items - Status do anúncio 
JSON: 
{ 
"status": "active" 
} 
Active Paused Closed
Developer Conference 
POST /items/:id/relist - Republicar um anúncio 
https://api.mercadolibre.com/items/MLB568033554/relist 
Relist 
Active Paused Closed
Developer Conference 
POST /items/:id/relist - Republicar um anúncio 
APP 
POST
Developer Conference 
POST /items/:id/relist - Republicar um anúncio 
APP 
POST 
{ 
"listing_type_id": "silver", 
"quantity": 99, 
"price": 1900 
}
Developer Conference 
POST /items/:id/relist - Republicar um anúncio 
APP 
POST 
APP 
{ 
"id": "MLB123456789", 
"site_id": "MLB", 
"title": "Apple Iphone 5s 16gb 4g Desbloqueado Original Promoção", 
"price": 1900, 
"listing_type_id": "silver", 
201 Created
Developer Conference 
Perguntas 
https://api.mercadolibre.com/questions
Developer Conference 
POST /questions - Notificação 
APP 
POST
Developer Conference 
POST /questions - Notificação 
{ 
"user_id": "12345678", 
"resource": "/questions/123456789", 
"topic": "questions", 
"received": "2014-02-04T19:00:04+00:00", 
"sent": "2014-02-04T19:00:45+00:00" 
} 
APP 
POST
Developer Conference 
POST /questions - Notificação 
APP 
POST 
APP 
{ 
"user_id": "12345678", 
"resource": "/questions/123456789", 
"topic": "questions", 
"received": "2014-02-04T19:00:04+00:00", 
"sent": "2014-02-04T19:00:45+00:00" 
} 
200 Ok
Developer Conference 
GET /questions - Consultar uma pergunta 
https://api.mercadolibre.com/questions/123456789
Developer Conference 
GET /questions - Consultar uma pergunta 
JSON de retorno: 
{ 
"id": 123456789, 
"answer": null, 
"date_created": "2014-02-04T19:00:04-00:00", 
"item_id": "MLB568033554", 
"seller_id": 123456789, 
"status": "UNANSWERED", 
"text": "Quanto tempo de garantia do produto?", 
"from": { 
"id": 9876543, 
"answered_questions": 0 
} 
}
Developer Conference 
POST /answer - Responder uma pergunta 
https://api.mercadolibre.com/answer
Developer Conference 
POST /answer - Responder uma pergunta 
JSON enviado: 
{ 
"question_id": "123456789", 
"text": "Oferecemos garantia de 01 ano" 
}
Developer Conference 
POST /answer - Responder uma pergunta 
APP 
POST
Developer Conference 
POST /questions - Responder uma pergunta 
APP 
POST 
APP 
201 Created
Developer Conference 
DELETE /questions - Excluir uma pergunta 
https://api.mercadolibre.com/questions/123456789 
Método: DELETE
Developer Conference 
Pedidos 
https://api.mercadolibre.com/orders
Developer Conference 
POST /orders - Consultar um pedido 
APP 
POST
Developer Conference 
POST /orders - Consultar um pedido 
{ 
"user_id": "12345678", 
"resource": "/orders/123456789", 
"topic": "orders", 
"received": "2014-02-04T19:00:04+00:00", 
"sent": "2014-02-04T19:00:45+00:00" 
} 
APP 
POST
Developer Conference 
POST /orders - Consultar um pedido 
{ 
"user_id": "12345678", 
"resource": "/orders/123456789", 
"topic": "orders", 
"received": "2014-02-04T19:00:04+00:00", 
"sent": "2014-02-04T19:00:45+00:00" 
} 
APP 
POST 
APP 
200 Ok
Developer Conference 
GET /orders - Consultar um pedido 
{ 
"id": 12345678, 
"status": "paid", 
"status_detail": null, 
"date_created": "2013-05-27T10:01:50.000-04:00", 
"date_closed": "2013-05-27T10:04:07.000-04:00", 
"order_items": - [ 
- { 
"item": - { 
"id": "MLB56XXXXX54", 
"title": "Apple Iphone 5s 32gb Promoção", 
"variation_id": null, 
"variation_attributes": [ ], 
}, 
"quantity": 1, 
"unit_price": 1950, 
"currency_id": "BRL",
Developer Conference 
GET /orders - Consultar um pedido 
"buyer": - { 
"id": "60XXXXXX43", 
"nickname": "CXXXXXXXXXX23", 
"email": "teste@email.com", 
"phone": - { 
"area_code": "11", 
"number": "20XXXXXX28", 
"extension": null, 
}, 
"first_name": "Usuario", 
"last_name": "Sobrenome", 
"billing_info": - { 
"doc_type": "CPF", 
"doc_number": "29XXXXXXXXXXXX8", 
}, 
}
Developer Conference 
GET /orders - Consultar um pedido 
"payments": - [ 
- { 
"id": "59XXXXXX37", 
"transaction_amount": 1950, 
"coupon_amount": null, 
"currency_id": "BRL", 
"status": "approved", 
"date_created": "2013-05-27T10:03:46.000-04:00", 
"date_last_modified": "2013-05-27T10:03:46.000-04:00", 
}, 
],
Developer Conference 
GET /orders - Consultar um pedido 
"shipping": - { 
"shipping_mode": "custom", 
"shipment_type": "shipping", 
"status": "shipped", 
"currency_id": "BRL", 
"receiver_address": - { 
"state": - { 
"id": "BR-SP", 
"name": "São Paulo", 
}, 
"street_name": null, 
"city": - { 
"id": "BR-SP-44", 
"name": "São Paulo", 
}, 
"country": - { 
"id": "BR", 
"name": "Brasil",
Developer Conference 
Qualificações 
https://api.mercadolibre.com/orders/1234567/feedback?version=3.0 
New API Tutorial: http://developers.mercadolibre.com/feedback/
Developer Conference 
POST /orders/:id/feedback - Qualificar o usuário 
JSON enviado: 
{ 
"fulfilled": "true", 
"rating": "positive", 
"message": "Recomendo a todos do Mercadolivre!" 
}
Developer Conference 
POST /orders/:id/feedback - Qualificar o usuário 
APP 
POST
Developer Conference 
POST /orders/:id/feedback - Qualificar o usuário 
APP 
POST 
APP 
201 Created
Developer Conference 
Buscas 
Método: GET 
Por Keyword: 
https://api.mercadolibre.com/sites/MLB/search?q=PlayStation4 
Por Category ID: 
https://api.mercadolibre.com/sites/MLB/search?category=MLB39328 
Por Nickname: 
https://api.mercadolibre.com/sites/MLB/search?nickname=$NICKNAME 
Por Seller ID: 
https://api.mercadolibre.com/sites/MLB/search?seller_id=123456789
Developer Conference 
Buscas 
Método: GET 
Por Combinações: 
https://api.mercadolibre.com/sites/MLB/search?category_id=MLB118907 
&seller_id=30437647&q=PlayStation4 
Ordenação: 
https://api.mercadolibre.com/sites/MLB/search?q=PlayStation4&sort=price_asc 
Paginação: 
https://api.mercadolibre.com/sites/MLB/search?q=PlayStation4&offset=100&limit=10
Developer Conference 
Perguntas?
Developer Conference 
OBRIGADO!

Mais conteúdo relacionado

Destaque

Gerenciando ventas - MeliDevConf BsAs.
Gerenciando ventas - MeliDevConf BsAs.Gerenciando ventas - MeliDevConf BsAs.
Gerenciando ventas - MeliDevConf BsAs.melidevelopers
 
Mercadopago - MeliDevConf BsAs.
Mercadopago - MeliDevConf BsAs.Mercadopago - MeliDevConf BsAs.
Mercadopago - MeliDevConf BsAs.melidevelopers
 
Business opportunities - MeliDevConf BsAs.
Business opportunities - MeliDevConf BsAs.Business opportunities - MeliDevConf BsAs.
Business opportunities - MeliDevConf BsAs.melidevelopers
 
MercadoPago
MercadoPagoMercadoPago
MercadoPagofsolari
 
Novidades das APIs wesley nascimento
Novidades das APIs   wesley nascimentoNovidades das APIs   wesley nascimento
Novidades das APIs wesley nascimentofsolari
 
API Interaction
API InteractionAPI Interaction
API Interactionfsolari
 
Vendedores 01 abertura - helisson lemos
Vendedores 01   abertura - helisson lemosVendedores 01   abertura - helisson lemos
Vendedores 01 abertura - helisson lemosfsolari
 
Nubimetrics
NubimetricsNubimetrics
Nubimetricsfsolari
 
Sala 2 06 desenvolvimento de integração ao vivo -gabriel e carlos
Sala 2 06   desenvolvimento de integração ao vivo -gabriel e carlosSala 2 06   desenvolvimento de integração ao vivo -gabriel e carlos
Sala 2 06 desenvolvimento de integração ao vivo -gabriel e carlosfsolari
 
Integration made easy with Azure Service Bus and APIM
Integration made easy with Azure Service Bus and APIMIntegration made easy with Azure Service Bus and APIM
Integration made easy with Azure Service Bus and APIMBizTalk360
 
Vendedores 02 como escalar meu negócio usando as ap is - rafael prenzier
Vendedores 02   como escalar meu negócio usando as ap is - rafael prenzierVendedores 02   como escalar meu negócio usando as ap is - rafael prenzier
Vendedores 02 como escalar meu negócio usando as ap is - rafael prenzierfsolari
 
Introdução das API's - MeliDevConf 2013 - SP
Introdução das API's - MeliDevConf 2013 - SPIntrodução das API's - MeliDevConf 2013 - SP
Introdução das API's - MeliDevConf 2013 - SPmelidevelopers
 
Audit¢rio 09 mercado envios - novas funcionalidades - bruno elia
Audit¢rio 09   mercado envios - novas funcionalidades - bruno eliaAudit¢rio 09   mercado envios - novas funcionalidades - bruno elia
Audit¢rio 09 mercado envios - novas funcionalidades - bruno eliafsolari
 
Federico Procaccini DevConf 2014
Federico Procaccini DevConf 2014Federico Procaccini DevConf 2014
Federico Procaccini DevConf 2014fsolari
 
Real Trends
Real TrendsReal Trends
Real Trendsfsolari
 
Experiencias de integração
Experiencias de integraçãoExperiencias de integração
Experiencias de integraçãofsolari
 
Audit¢rio 07 soluá‰es de pagamento mobile - victor vasconcellos
Audit¢rio 07   soluá‰es de pagamento mobile - victor vasconcellosAudit¢rio 07   soluá‰es de pagamento mobile - victor vasconcellos
Audit¢rio 07 soluá‰es de pagamento mobile - victor vasconcellosfsolari
 
DevConf AR2014
DevConf AR2014DevConf AR2014
DevConf AR2014fsolari
 
Vendedores 04 encerramento - leandro soares
Vendedores 04   encerramento - leandro soaresVendedores 04   encerramento - leandro soares
Vendedores 04 encerramento - leandro soaresfsolari
 
Introducción - MeliDevConf BsAs.
Introducción - MeliDevConf BsAs.Introducción - MeliDevConf BsAs.
Introducción - MeliDevConf BsAs.melidevelopers
 

Destaque (20)

Gerenciando ventas - MeliDevConf BsAs.
Gerenciando ventas - MeliDevConf BsAs.Gerenciando ventas - MeliDevConf BsAs.
Gerenciando ventas - MeliDevConf BsAs.
 
Mercadopago - MeliDevConf BsAs.
Mercadopago - MeliDevConf BsAs.Mercadopago - MeliDevConf BsAs.
Mercadopago - MeliDevConf BsAs.
 
Business opportunities - MeliDevConf BsAs.
Business opportunities - MeliDevConf BsAs.Business opportunities - MeliDevConf BsAs.
Business opportunities - MeliDevConf BsAs.
 
MercadoPago
MercadoPagoMercadoPago
MercadoPago
 
Novidades das APIs wesley nascimento
Novidades das APIs   wesley nascimentoNovidades das APIs   wesley nascimento
Novidades das APIs wesley nascimento
 
API Interaction
API InteractionAPI Interaction
API Interaction
 
Vendedores 01 abertura - helisson lemos
Vendedores 01   abertura - helisson lemosVendedores 01   abertura - helisson lemos
Vendedores 01 abertura - helisson lemos
 
Nubimetrics
NubimetricsNubimetrics
Nubimetrics
 
Sala 2 06 desenvolvimento de integração ao vivo -gabriel e carlos
Sala 2 06   desenvolvimento de integração ao vivo -gabriel e carlosSala 2 06   desenvolvimento de integração ao vivo -gabriel e carlos
Sala 2 06 desenvolvimento de integração ao vivo -gabriel e carlos
 
Integration made easy with Azure Service Bus and APIM
Integration made easy with Azure Service Bus and APIMIntegration made easy with Azure Service Bus and APIM
Integration made easy with Azure Service Bus and APIM
 
Vendedores 02 como escalar meu negócio usando as ap is - rafael prenzier
Vendedores 02   como escalar meu negócio usando as ap is - rafael prenzierVendedores 02   como escalar meu negócio usando as ap is - rafael prenzier
Vendedores 02 como escalar meu negócio usando as ap is - rafael prenzier
 
Introdução das API's - MeliDevConf 2013 - SP
Introdução das API's - MeliDevConf 2013 - SPIntrodução das API's - MeliDevConf 2013 - SP
Introdução das API's - MeliDevConf 2013 - SP
 
Audit¢rio 09 mercado envios - novas funcionalidades - bruno elia
Audit¢rio 09   mercado envios - novas funcionalidades - bruno eliaAudit¢rio 09   mercado envios - novas funcionalidades - bruno elia
Audit¢rio 09 mercado envios - novas funcionalidades - bruno elia
 
Federico Procaccini DevConf 2014
Federico Procaccini DevConf 2014Federico Procaccini DevConf 2014
Federico Procaccini DevConf 2014
 
Real Trends
Real TrendsReal Trends
Real Trends
 
Experiencias de integração
Experiencias de integraçãoExperiencias de integração
Experiencias de integração
 
Audit¢rio 07 soluá‰es de pagamento mobile - victor vasconcellos
Audit¢rio 07   soluá‰es de pagamento mobile - victor vasconcellosAudit¢rio 07   soluá‰es de pagamento mobile - victor vasconcellos
Audit¢rio 07 soluá‰es de pagamento mobile - victor vasconcellos
 
DevConf AR2014
DevConf AR2014DevConf AR2014
DevConf AR2014
 
Vendedores 04 encerramento - leandro soares
Vendedores 04   encerramento - leandro soaresVendedores 04   encerramento - leandro soares
Vendedores 04 encerramento - leandro soares
 
Introducción - MeliDevConf BsAs.
Introducción - MeliDevConf BsAs.Introducción - MeliDevConf BsAs.
Introducción - MeliDevConf BsAs.
 

Semelhante a API-CONCEITOS

Api first desenhando e testando sua api like a boss
Api first   desenhando e testando sua api like a bossApi first   desenhando e testando sua api like a boss
Api first desenhando e testando sua api like a bossRenan Petronilho Sant Anna
 
10 Atributos de uma API de Sucesso
10 Atributos de uma API de Sucesso10 Atributos de uma API de Sucesso
10 Atributos de uma API de SucessoKleber Bacili
 
APIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaJosé Vahl
 
APIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaFábio Rosato
 
Campus Party 2015: Os 10 Atributos de uma API de Sucesso
Campus Party 2015: Os 10 Atributos de uma API de SucessoCampus Party 2015: Os 10 Atributos de uma API de Sucesso
Campus Party 2015: Os 10 Atributos de uma API de SucessoKleber Bacili
 
Publicando un artículo con la API de Mercadolibre
Publicando un artículo con la API de MercadolibrePublicando un artículo con la API de Mercadolibre
Publicando un artículo con la API de MercadolibreFernando Scasserra
 
O que é o Apple Passbook?
O que é o Apple Passbook?O que é o Apple Passbook?
O que é o Apple Passbook?iMasters
 
Design de APIs RESTful Seguras e Escaláveis
Design de APIs RESTful Seguras e EscaláveisDesign de APIs RESTful Seguras e Escaláveis
Design de APIs RESTful Seguras e EscaláveisKleber Bacili
 
Design de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber Bacili
Design de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber BaciliDesign de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber Bacili
Design de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber BaciliiMasters
 
Mini Palestra: PHP no mundo mobile
Mini Palestra: PHP no mundo mobileMini Palestra: PHP no mundo mobile
Mini Palestra: PHP no mundo mobileMaurílio Silva
 
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)Makoto Miyagawa
 

Semelhante a API-CONCEITOS (14)

Api first desenhando e testando sua api like a boss
Api first   desenhando e testando sua api like a bossApi first   desenhando e testando sua api like a boss
Api first desenhando e testando sua api like a boss
 
10 Atributos de uma API de Sucesso
10 Atributos de uma API de Sucesso10 Atributos de uma API de Sucesso
10 Atributos de uma API de Sucesso
 
APIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a ponta
 
APIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a ponta
 
Campus Party 2015: Os 10 Atributos de uma API de Sucesso
Campus Party 2015: Os 10 Atributos de uma API de SucessoCampus Party 2015: Os 10 Atributos de uma API de Sucesso
Campus Party 2015: Os 10 Atributos de uma API de Sucesso
 
Publicando un artículo con la API de Mercadolibre
Publicando un artículo con la API de MercadolibrePublicando un artículo con la API de Mercadolibre
Publicando un artículo con la API de Mercadolibre
 
Listing
ListingListing
Listing
 
Meetup MUG-RS KingHost
Meetup MUG-RS KingHostMeetup MUG-RS KingHost
Meetup MUG-RS KingHost
 
O que é o Apple Passbook?
O que é o Apple Passbook?O que é o Apple Passbook?
O que é o Apple Passbook?
 
Design de APIs RESTful Seguras e Escaláveis
Design de APIs RESTful Seguras e EscaláveisDesign de APIs RESTful Seguras e Escaláveis
Design de APIs RESTful Seguras e Escaláveis
 
Design de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber Bacili
Design de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber BaciliDesign de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber Bacili
Design de APIs RESTful – Seguras, Escaláveis e Interoperáveis, por Kleber Bacili
 
Mini Palestra: PHP no mundo mobile
Mini Palestra: PHP no mundo mobileMini Palestra: PHP no mundo mobile
Mini Palestra: PHP no mundo mobile
 
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)Fazendo uma aplicação cliente/servidor (e algumas dicas...)
Fazendo uma aplicação cliente/servidor (e algumas dicas...)
 
Tech for non techs
Tech for non techsTech for non techs
Tech for non techs
 

Mais de fsolari

Live code - Pablo Moretti
Live code - Pablo Moretti Live code - Pablo Moretti
Live code - Pablo Moretti fsolari
 
Verticales - Federico Porrini y Matias Medeot
Verticales - Federico Porrini y Matias MedeotVerticales - Federico Porrini y Matias Medeot
Verticales - Federico Porrini y Matias Medeotfsolari
 
Tendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali SegoviaTendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali Segoviafsolari
 
Cómo publicar un item - Franco Martinez
Cómo publicar un item - Franco MartinezCómo publicar un item - Franco Martinez
Cómo publicar un item - Franco Martinezfsolari
 
Autorización - Leandro Bertalot
Autorización - Leandro BertalotAutorización - Leandro Bertalot
Autorización - Leandro Bertalotfsolari
 
API Overview - Migcenel Gonzalez y Josué Gerardo
API Overview - Migcenel Gonzalez y Josué GerardoAPI Overview - Migcenel Gonzalez y Josué Gerardo
API Overview - Migcenel Gonzalez y Josué Gerardofsolari
 
Ibushak - Salomon y Mauricio Bouzali
Ibushak - Salomon y Mauricio BouzaliIbushak - Salomon y Mauricio Bouzali
Ibushak - Salomon y Mauricio Bouzalifsolari
 
Monetización - Ignacio Caride
Monetización - Ignacio CarideMonetización - Ignacio Caride
Monetización - Ignacio Caridefsolari
 
Herramientas para vendedores - Nicolas Coniglio
Herramientas para vendedores - Nicolas ConiglioHerramientas para vendedores - Nicolas Coniglio
Herramientas para vendedores - Nicolas Conigliofsolari
 
MercadoEnvíos - Soledad Dematteo
MercadoEnvíos - Soledad DematteoMercadoEnvíos - Soledad Dematteo
MercadoEnvíos - Soledad Dematteofsolari
 
MercadoPago - Ariel Leiva
MercadoPago - Ariel LeivaMercadoPago - Ariel Leiva
MercadoPago - Ariel Leivafsolari
 
Daniel Rabinovich
Daniel RabinovichDaniel Rabinovich
Daniel Rabinovichfsolari
 
Bienvenida - Marcos Galperin
Bienvenida  - Marcos GalperinBienvenida  - Marcos Galperin
Bienvenida - Marcos Galperinfsolari
 
MercadoShops - Johnny Wong
MercadoShops - Johnny WongMercadoShops - Johnny Wong
MercadoShops - Johnny Wongfsolari
 
Open platform - Hernan Di Chello / José Garcia
Open platform  - Hernan Di Chello / José GarciaOpen platform  - Hernan Di Chello / José Garcia
Open platform - Hernan Di Chello / José Garciafsolari
 
Live coding - Pablo Moretti
Live coding - Pablo MorettiLive coding - Pablo Moretti
Live coding - Pablo Morettifsolari
 
Integración en verticales - Federico Porrini | Matias Medeot
Integración en verticales	- Federico Porrini | Matias MedeotIntegración en verticales	- Federico Porrini | Matias Medeot
Integración en verticales - Federico Porrini | Matias Medeotfsolari
 
Creando Herramientas para Vendedores - Nicolas Coniglio
Creando Herramientas para Vendedores - Nicolas ConiglioCreando Herramientas para Vendedores - Nicolas Coniglio
Creando Herramientas para Vendedores - Nicolas Conigliofsolari
 
Solución Mobile de Pagos - Sergio Cirielli
Solución Mobile de Pagos - Sergio CirielliSolución Mobile de Pagos - Sergio Cirielli
Solución Mobile de Pagos - Sergio Ciriellifsolari
 
Novedades de la Plataforma MercadoEnvios - Soledad Dematteo
Novedades de la Plataforma MercadoEnvios - Soledad DematteoNovedades de la Plataforma MercadoEnvios - Soledad Dematteo
Novedades de la Plataforma MercadoEnvios - Soledad Dematteofsolari
 

Mais de fsolari (20)

Live code - Pablo Moretti
Live code - Pablo Moretti Live code - Pablo Moretti
Live code - Pablo Moretti
 
Verticales - Federico Porrini y Matias Medeot
Verticales - Federico Porrini y Matias MedeotVerticales - Federico Porrini y Matias Medeot
Verticales - Federico Porrini y Matias Medeot
 
Tendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali SegoviaTendencias Mobile - Neftali Segovia
Tendencias Mobile - Neftali Segovia
 
Cómo publicar un item - Franco Martinez
Cómo publicar un item - Franco MartinezCómo publicar un item - Franco Martinez
Cómo publicar un item - Franco Martinez
 
Autorización - Leandro Bertalot
Autorización - Leandro BertalotAutorización - Leandro Bertalot
Autorización - Leandro Bertalot
 
API Overview - Migcenel Gonzalez y Josué Gerardo
API Overview - Migcenel Gonzalez y Josué GerardoAPI Overview - Migcenel Gonzalez y Josué Gerardo
API Overview - Migcenel Gonzalez y Josué Gerardo
 
Ibushak - Salomon y Mauricio Bouzali
Ibushak - Salomon y Mauricio BouzaliIbushak - Salomon y Mauricio Bouzali
Ibushak - Salomon y Mauricio Bouzali
 
Monetización - Ignacio Caride
Monetización - Ignacio CarideMonetización - Ignacio Caride
Monetización - Ignacio Caride
 
Herramientas para vendedores - Nicolas Coniglio
Herramientas para vendedores - Nicolas ConiglioHerramientas para vendedores - Nicolas Coniglio
Herramientas para vendedores - Nicolas Coniglio
 
MercadoEnvíos - Soledad Dematteo
MercadoEnvíos - Soledad DematteoMercadoEnvíos - Soledad Dematteo
MercadoEnvíos - Soledad Dematteo
 
MercadoPago - Ariel Leiva
MercadoPago - Ariel LeivaMercadoPago - Ariel Leiva
MercadoPago - Ariel Leiva
 
Daniel Rabinovich
Daniel RabinovichDaniel Rabinovich
Daniel Rabinovich
 
Bienvenida - Marcos Galperin
Bienvenida  - Marcos GalperinBienvenida  - Marcos Galperin
Bienvenida - Marcos Galperin
 
MercadoShops - Johnny Wong
MercadoShops - Johnny WongMercadoShops - Johnny Wong
MercadoShops - Johnny Wong
 
Open platform - Hernan Di Chello / José Garcia
Open platform  - Hernan Di Chello / José GarciaOpen platform  - Hernan Di Chello / José Garcia
Open platform - Hernan Di Chello / José Garcia
 
Live coding - Pablo Moretti
Live coding - Pablo MorettiLive coding - Pablo Moretti
Live coding - Pablo Moretti
 
Integración en verticales - Federico Porrini | Matias Medeot
Integración en verticales	- Federico Porrini | Matias MedeotIntegración en verticales	- Federico Porrini | Matias Medeot
Integración en verticales - Federico Porrini | Matias Medeot
 
Creando Herramientas para Vendedores - Nicolas Coniglio
Creando Herramientas para Vendedores - Nicolas ConiglioCreando Herramientas para Vendedores - Nicolas Coniglio
Creando Herramientas para Vendedores - Nicolas Coniglio
 
Solución Mobile de Pagos - Sergio Cirielli
Solución Mobile de Pagos - Sergio CirielliSolución Mobile de Pagos - Sergio Cirielli
Solución Mobile de Pagos - Sergio Cirielli
 
Novedades de la Plataforma MercadoEnvios - Soledad Dematteo
Novedades de la Plataforma MercadoEnvios - Soledad DematteoNovedades de la Plataforma MercadoEnvios - Soledad Dematteo
Novedades de la Plataforma MercadoEnvios - Soledad Dematteo
 

API-CONCEITOS

  • 1. API – CONCEITOS GERAIS Danilo Santos Engenheiro de Software do MercadoLivre
  • 2. Developer Conference Agenda - API - RESTful - JSON - Categorias - Anúncios - Perguntas - Pedidos - Qualificações - Buscas
  • 3. Developer Conference O que é uma API? A - Application P - Programming I - Interface
  • 4. Developer Conference RESTful GET POST PUT DELETE
  • 7. Developer Conference JSON "A mesma praça… o mesmo banco..."
  • 8. Developer Conference JSON { "title": "Apple Iphone 5s 16gb 4g Original Promoção", "category_id": "MLB123612", "price": 2000, "currency_id": "BRL", "initial_quantity": 50, "buying_mode": "buy_it_now", "listing_type_id": "gold_premium", "condition": "new", "pictures": { "source": "http://static.hsw.com.br/gif/how-buildings-58.jpg"}, "video_id": null, "descriptions": "item: <strong> Iphone 5s Imperdível!!! </strong>" }
  • 9. Developer Conference Agenda - API - RESTful - JSON - Categorias - Anúncios - Perguntas - Pedidos - Qualificações - Buscas
  • 16. Developer Conference Categorias https://api.mercadolibre.com/sites/MLB
  • 17. Developer Conference Anúncios https://api.mercadolibre.com/items
  • 18. Developer Conference POST /items - Cadastrar um anúncio - Título - Categoria - Preço - Quantidade - Nível de exposição - Imagens - Descrição
  • 19. Developer Conference POST /items - Cadastrar um anúncio JSON enviado: { "title": "Apple Iphone 5s 16gb 4g Original Promoção", "category_id": "MLB123612", "price": 2000, "currency_id": "BRL", "initial_quantity": 50, "listing_type_id": "silver", "condition": "new", "pictures": { "source": "http://static.hsw.com.br/gif/how-to-draw-buildings-58.jpg"}, "video_id": null, "descriptions": "item: <strong> Iphone 5s Imperdível!!! </strong>",
  • 20. Developer Conference POST /items - Cadastrar um anúncio APP POST
  • 21. Developer Conference POST /items - Cadastrar um anúncio APP POST APP 201 Created
  • 22. Developer Conference POST /items - Cadastrar um anúncio JSON de retorno: { "id": "MLB568033554", "site_id": "MLB", "title": "Apple Iphone 5s 16gb 4g Desbloqueado Original Promoção", "price": 2179, "currency_id": "BRL", "listing_type_id": "silver", "condition": "new", "permalink": "http://produto.mercadolivre.com.br/MLB-568033554-iphone-5s-original-_JM",
  • 23. Developer Conference PUT /items/:id - Modificar um anúncio https://api.mercadolibre.com/items/MLB568033554
  • 24. Developer Conference PUT /items/:id - Modificar um anúncio JSON enviado: { "title": "Apple Iphone 5s 32gb Promoção", "price": 1900, }
  • 25. Developer Conference PUT /items/:id - Modificar um anúncio APP PUT
  • 26. Developer Conference PUT /items/:id - Modificar um anúncio APP PUT APP 200 Ok
  • 27. Developer Conference PUT /items/:id - Modificar um anúncio JSON de retorno: { "id": "MLB568033554", "site_id": "MLB", "title": "Apple Iphone 5s 32gb Promoção", "price": 1900, "currency_id": "BRL", "listing_type_id": "silver", "condition": "new", "permalink": "http://produto.mercadolivre.com.br/MLB-568033554-iphone-5s-original-_JM",
  • 28. Developer Conference PUT /items/:id - Modificar um anúncio Campos que podem ser modificados: - Título - Quantidade disponível - Preço - Video - Imagens - Descrição - Modo de Envio
  • 29. Developer Conference PUT /items/:id - Modificar um anúncio Campos que NÃO podem ser modificados após uma venda do produto: - Título - Condição (novo/usado) - Método de Envio - Video - Garantia
  • 30. Developer Conference PUT /items - Status do anúncio JSON: { "status": "active" } Active Paused Closed
  • 31. Developer Conference POST /items/:id/relist - Republicar um anúncio https://api.mercadolibre.com/items/MLB568033554/relist Relist Active Paused Closed
  • 32. Developer Conference POST /items/:id/relist - Republicar um anúncio APP POST
  • 33. Developer Conference POST /items/:id/relist - Republicar um anúncio APP POST { "listing_type_id": "silver", "quantity": 99, "price": 1900 }
  • 34. Developer Conference POST /items/:id/relist - Republicar um anúncio APP POST APP { "id": "MLB123456789", "site_id": "MLB", "title": "Apple Iphone 5s 16gb 4g Desbloqueado Original Promoção", "price": 1900, "listing_type_id": "silver", 201 Created
  • 35. Developer Conference Perguntas https://api.mercadolibre.com/questions
  • 36. Developer Conference POST /questions - Notificação APP POST
  • 37. Developer Conference POST /questions - Notificação { "user_id": "12345678", "resource": "/questions/123456789", "topic": "questions", "received": "2014-02-04T19:00:04+00:00", "sent": "2014-02-04T19:00:45+00:00" } APP POST
  • 38. Developer Conference POST /questions - Notificação APP POST APP { "user_id": "12345678", "resource": "/questions/123456789", "topic": "questions", "received": "2014-02-04T19:00:04+00:00", "sent": "2014-02-04T19:00:45+00:00" } 200 Ok
  • 39. Developer Conference GET /questions - Consultar uma pergunta https://api.mercadolibre.com/questions/123456789
  • 40. Developer Conference GET /questions - Consultar uma pergunta JSON de retorno: { "id": 123456789, "answer": null, "date_created": "2014-02-04T19:00:04-00:00", "item_id": "MLB568033554", "seller_id": 123456789, "status": "UNANSWERED", "text": "Quanto tempo de garantia do produto?", "from": { "id": 9876543, "answered_questions": 0 } }
  • 41. Developer Conference POST /answer - Responder uma pergunta https://api.mercadolibre.com/answer
  • 42. Developer Conference POST /answer - Responder uma pergunta JSON enviado: { "question_id": "123456789", "text": "Oferecemos garantia de 01 ano" }
  • 43. Developer Conference POST /answer - Responder uma pergunta APP POST
  • 44. Developer Conference POST /questions - Responder uma pergunta APP POST APP 201 Created
  • 45. Developer Conference DELETE /questions - Excluir uma pergunta https://api.mercadolibre.com/questions/123456789 Método: DELETE
  • 46. Developer Conference Pedidos https://api.mercadolibre.com/orders
  • 47. Developer Conference POST /orders - Consultar um pedido APP POST
  • 48. Developer Conference POST /orders - Consultar um pedido { "user_id": "12345678", "resource": "/orders/123456789", "topic": "orders", "received": "2014-02-04T19:00:04+00:00", "sent": "2014-02-04T19:00:45+00:00" } APP POST
  • 49. Developer Conference POST /orders - Consultar um pedido { "user_id": "12345678", "resource": "/orders/123456789", "topic": "orders", "received": "2014-02-04T19:00:04+00:00", "sent": "2014-02-04T19:00:45+00:00" } APP POST APP 200 Ok
  • 50. Developer Conference GET /orders - Consultar um pedido { "id": 12345678, "status": "paid", "status_detail": null, "date_created": "2013-05-27T10:01:50.000-04:00", "date_closed": "2013-05-27T10:04:07.000-04:00", "order_items": - [ - { "item": - { "id": "MLB56XXXXX54", "title": "Apple Iphone 5s 32gb Promoção", "variation_id": null, "variation_attributes": [ ], }, "quantity": 1, "unit_price": 1950, "currency_id": "BRL",
  • 51. Developer Conference GET /orders - Consultar um pedido "buyer": - { "id": "60XXXXXX43", "nickname": "CXXXXXXXXXX23", "email": "teste@email.com", "phone": - { "area_code": "11", "number": "20XXXXXX28", "extension": null, }, "first_name": "Usuario", "last_name": "Sobrenome", "billing_info": - { "doc_type": "CPF", "doc_number": "29XXXXXXXXXXXX8", }, }
  • 52. Developer Conference GET /orders - Consultar um pedido "payments": - [ - { "id": "59XXXXXX37", "transaction_amount": 1950, "coupon_amount": null, "currency_id": "BRL", "status": "approved", "date_created": "2013-05-27T10:03:46.000-04:00", "date_last_modified": "2013-05-27T10:03:46.000-04:00", }, ],
  • 53. Developer Conference GET /orders - Consultar um pedido "shipping": - { "shipping_mode": "custom", "shipment_type": "shipping", "status": "shipped", "currency_id": "BRL", "receiver_address": - { "state": - { "id": "BR-SP", "name": "São Paulo", }, "street_name": null, "city": - { "id": "BR-SP-44", "name": "São Paulo", }, "country": - { "id": "BR", "name": "Brasil",
  • 54. Developer Conference Qualificações https://api.mercadolibre.com/orders/1234567/feedback?version=3.0 New API Tutorial: http://developers.mercadolibre.com/feedback/
  • 55. Developer Conference POST /orders/:id/feedback - Qualificar o usuário JSON enviado: { "fulfilled": "true", "rating": "positive", "message": "Recomendo a todos do Mercadolivre!" }
  • 56. Developer Conference POST /orders/:id/feedback - Qualificar o usuário APP POST
  • 57. Developer Conference POST /orders/:id/feedback - Qualificar o usuário APP POST APP 201 Created
  • 58. Developer Conference Buscas Método: GET Por Keyword: https://api.mercadolibre.com/sites/MLB/search?q=PlayStation4 Por Category ID: https://api.mercadolibre.com/sites/MLB/search?category=MLB39328 Por Nickname: https://api.mercadolibre.com/sites/MLB/search?nickname=$NICKNAME Por Seller ID: https://api.mercadolibre.com/sites/MLB/search?seller_id=123456789
  • 59. Developer Conference Buscas Método: GET Por Combinações: https://api.mercadolibre.com/sites/MLB/search?category_id=MLB118907 &seller_id=30437647&q=PlayStation4 Ordenação: https://api.mercadolibre.com/sites/MLB/search?q=PlayStation4&sort=price_asc Paginação: https://api.mercadolibre.com/sites/MLB/search?q=PlayStation4&offset=100&limit=10