mercadolibre 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4d590ea5ce185ae420280820a441df6a745ad367
4
- data.tar.gz: 95ea25c832b36a77d9fdbc25186ee783e2f0d54a
3
+ metadata.gz: bd38a2d993d7500e9d40cb333837105d44870396
4
+ data.tar.gz: dee970c952e36c30bb4dbb6dedebae38cdddb9e6
5
5
  SHA512:
6
- metadata.gz: 50cd4241e2d1d941fb7c13dbd1c0025000deae99106a29b3db5a3096079d3ac162fc1880fb67ed91bc36b48d8659fb1edcb7888fa334e96ef230cceb0a7d522f
7
- data.tar.gz: d611737ce627fe623e017b66e38ef3f66326a3998fe689d5e41d7edaa4dd6a9604394a0b6bafd51ffdc673ece28ae95ce2700c16b10b8809303be627ab01e7a1
6
+ metadata.gz: 4b949f083835357302cde4c6a59198754e9217bcbe531084f1d88c8ecdfb352ea57f9ee6718067eaea6a7b5043270a973aee98a5c1a39a7fd3deca940e22f58e
7
+ data.tar.gz: 9be591299723b63acc698b727cfa2cdb4451db8d4fac3515176889038760f202a5dbf1b81c9b8952cb8482003a105045e60ff69dd0a705f0ce1592e692b9897c
data/CHANGELOG.md CHANGED
@@ -245,3 +245,7 @@
245
245
  ## v1.2.0
246
246
 
247
247
  * Bugfix with json payload
248
+
249
+ ## v1.3.0
250
+
251
+ * Added API methods for categories and refactor on modules
@@ -12,15 +12,16 @@ module Mercadolibre
12
12
  @site = args[:site]
13
13
  end
14
14
 
15
- include Mercadolibre::Core::Auth
16
15
  include Mercadolibre::Core::CategoriesAndListings
17
16
  include Mercadolibre::Core::Collections
18
17
  include Mercadolibre::Core::ItemsAndSearches
19
18
  include Mercadolibre::Core::LocationsAndCurrencies
20
- include Mercadolibre::Core::OrderManagement
21
- include Mercadolibre::Core::Questions
22
- include Mercadolibre::Core::Shippings
23
- include Mercadolibre::Core::Users
19
+ include Mercadolibre::Core::Metrics
20
+ include Mercadolibre::Core::Oauth
21
+ include Mercadolibre::Core::OrdersAndFeedbacks
22
+ include Mercadolibre::Core::QuestionsAndAnswers
23
+ include Mercadolibre::Core::Shipping
24
+ include Mercadolibre::Core::UsersAndApps
24
25
 
25
26
  def get_last_response
26
27
  @last_response
@@ -5,7 +5,7 @@ module Mercadolibre
5
5
  get_request('/sites').body
6
6
  end
7
7
 
8
- def get_site(site_id)
8
+ def get_site(site_id=nil)
9
9
  get_request("/sites/#{site_id}").body
10
10
  end
11
11
 
@@ -13,28 +13,46 @@ module Mercadolibre
13
13
  get_request("/site_domains/#{domain}").body
14
14
  end
15
15
 
16
- def get_listing_types(site_id)
16
+ def get_listing_types(site_id=nil)
17
+ site_id = @site if site_id.nil?
17
18
  get_request("/sites/#{site_id}/listing_types").body
18
19
  end
19
20
 
20
- def get_listing_exposures(site_id)
21
+ def get_listing_exposures(site_id=nil)
22
+ site_id = @site if site_id.nil?
21
23
  get_request("/sites/#{site_id}/listing_exposures").body
22
24
  end
23
25
 
24
- def get_listing_prices(filters)
25
- valid_filters = ['price', 'listing_type_id', 'quantity', 'category_id', 'currency_id']
26
- filters.keep_if { |k,v| valid_filters.include?(k.to_s) }
27
-
26
+ def get_listing_prices(filters={})
28
27
  get_request("/sites/#{site_id}/listing_prices", filters).body
29
28
  end
30
29
 
31
- def get_site_categories(site_id)
30
+ def get_site_categories(site_id=nil)
31
+ site_id = @site if site_id.nil?
32
32
  get_request("/sites/#{site_id}/categories").body
33
33
  end
34
34
 
35
- def get_category(category_id)
35
+ def get_site_category(category_id)
36
36
  get_request("/categories/#{category_id}").body
37
37
  end
38
+
39
+ def get_category_attributes(category_id)
40
+ get_request("/categories/#{category_id}/attributes").body
41
+ end
42
+
43
+ def get_category_prediction(title, site_id=nil)
44
+ site_id = @site if site_id.nil?
45
+ get_request("/sites/#{site_id}/category_predictor/predict", { title: title }).body
46
+ end
47
+
48
+ def get_category_promotion_packs(category_id)
49
+ get_request("/categories/#{category_id}/classifieds_promotion_packs").body
50
+ end
51
+
52
+ def get_listing_type(listing_type_id, site_id=nil)
53
+ site_id = @site if site_id.nil?
54
+ get_request("/sites/#{site_id}/listing_types/#{listing_type_id}", { title: title }).body
55
+ end
38
56
  end
39
57
  end
40
58
  end
@@ -0,0 +1,6 @@
1
+ module Mercadolibre
2
+ module Core
3
+ module Metrics
4
+ end
5
+ end
6
+ end
@@ -1,6 +1,6 @@
1
1
  module Mercadolibre
2
2
  module Core
3
- module Auth
3
+ module Oauth
4
4
  def authenticate_url
5
5
  get_attrs = {
6
6
  response_type: 'code',
@@ -1,6 +1,6 @@
1
1
  module Mercadolibre
2
2
  module Core
3
- module OrderManagement
3
+ module OrdersAndFeedback
4
4
  def search_archived_orders(filters={})
5
5
  filters.merge!({
6
6
  seller: get_my_user.id,
@@ -1,6 +1,6 @@
1
1
  module Mercadolibre
2
2
  module Core
3
- module Questions
3
+ module QuestionsAndAnswers
4
4
  def get_my_questions(filters={})
5
5
  filters.merge!({ access_token: @access_token })
6
6
 
@@ -1,6 +1,6 @@
1
1
  module Mercadolibre
2
2
  module Core
3
- module Shippings
3
+ module Shipping
4
4
  def get_shipment(shipment_id)
5
5
  filters = { access_token: @access_token }
6
6
  get_request("/shipments/#{shipment_id}", filters).body
@@ -0,0 +1,81 @@
1
+ module Mercadolibre
2
+ module Core
3
+ module UsersAndApps
4
+ def get_user(user_id)
5
+ get_request("/users/#{user_id}", { access_token: @access_token }).body
6
+ end
7
+
8
+ def get_users(user_ids)
9
+ get_request('/users', { ids: user_ids.join(',') }).body
10
+ end
11
+
12
+ def get_seller(nickname)
13
+ filters = { nickname: nickname, limit: 0 }
14
+ response = get_request("/sites/#{@site}/search", filters)[:body]
15
+ get_user(response.seller.id)
16
+ end
17
+
18
+ def get_my_user
19
+ get_request('/users/me', { access_token: @access_token }).body
20
+ end
21
+
22
+ def get_user_addresses(user_id)
23
+ get_request("/users/#{user_id}/addresses", { access_token: @access_token }).body
24
+ end
25
+
26
+ def get_user_payment_methods(user_id)
27
+ get_request("/users/#{user_id}/payment_methods", { access_token: @access_token }).body
28
+ end
29
+
30
+ def get_user_brands(user_id)
31
+ get_request("/users/#{user_id}/brands", { access_token: @access_token }).body
32
+ end
33
+
34
+ def get_user_promotion_packs(user_id, listing_type=nil, category_id=nil)
35
+ filters = { access_token: @access_token }
36
+
37
+ if category_id.present?
38
+ filters[:categoryId] = category_id
39
+ end
40
+
41
+ if listing_type.present?
42
+ url = "/users/#{user_id}/classifieds_promotion_packs/#{listing_type}"
43
+ else
44
+ url = "/users/#{user_id}/classifieds_promotion_packs"
45
+ end
46
+
47
+ get_request(url, filters).body
48
+ end
49
+
50
+ def get_user_available_listing_types(user_id, category_id)
51
+ filters = {
52
+ access_token: @access_token,
53
+ category_id: category_id
54
+ }
55
+
56
+ get_request("/users/#{user_id}/available_listing_types", filters).body
57
+ end
58
+
59
+ def get_user_listing_type_availability(listing_type, category_id)
60
+ filters = {
61
+ access_token: @access_token,
62
+ category_id: category_id
63
+ }
64
+
65
+ get_request("/users/#{user_id}/available_listing_type/#{listing_type}", filters).body
66
+ end
67
+
68
+ def get_application_feeds
69
+ get_request("/users/#{user_id}/applications/#{@app_key}", { access_token: @access_token }).body
70
+ end
71
+
72
+ def get_application_info
73
+ get_request("/applications/#{@app_key}", { access_token: @access_token }).body
74
+ end
75
+
76
+ def get_user_accepted_payment_methods(user_id)
77
+ get_request("/users/#{user_id}/accepted_payment_methods").body
78
+ end
79
+ end
80
+ end
81
+ end
@@ -1,3 +1,3 @@
1
1
  module Mercadolibre
2
- VERSION = '1.2.0'
2
+ VERSION = '1.3.0'
3
3
  end
data/lib/mercadolibre.rb CHANGED
@@ -1,21 +1,22 @@
1
1
  require "mercadolibre/version"
2
2
 
3
3
  # mercadolibre -> core
4
- require "mercadolibre/core/auth"
5
4
  require "mercadolibre/core/categories_and_listings"
6
5
  require "mercadolibre/core/collections"
7
6
  require "mercadolibre/core/items_and_searches"
8
7
  require "mercadolibre/core/locations_and_currencies"
9
- require "mercadolibre/core/order_management"
10
- require "mercadolibre/core/questions"
11
- require "mercadolibre/core/shippings"
12
- require "mercadolibre/core/users"
8
+ require "mercadolibre/core/metrics"
9
+ require "mercadolibre/core/oauth"
10
+ require "mercadolibre/core/orders_and_feedback"
11
+ require "mercadolibre/core/questions_and_answers"
12
+ require "mercadolibre/core/shipping"
13
+ require "mercadolibre/core/users_and_apps"
13
14
 
14
15
  # mercadolibre -> api
15
16
  require "mercadolibre/api"
16
17
 
17
18
  # mercadopago -> core
18
- require "mercadopago/core/auth"
19
+ require "mercadopago/core/oauth"
19
20
  require "mercadopago/core/payments"
20
21
 
21
22
  # mercadopago -> api
@@ -11,7 +11,7 @@ module Mercadopago
11
11
  @auth_url = 'https://auth.mercadopago.com.ar'
12
12
  end
13
13
 
14
- include Mercadopago::Core::Auth
14
+ include Mercadopago::Core::Oauth
15
15
  include Mercadopago::Core::Payments
16
16
 
17
17
  def get_last_response
@@ -1,6 +1,6 @@
1
1
  module Mercadopago
2
2
  module Core
3
- module Auth
3
+ module Oauth
4
4
  def authenticate_url
5
5
  get_attrs = {
6
6
  response_type: 'code',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mercadolibre
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matias Hick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-19 00:00:00.000000000 Z
11
+ date: 2016-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -64,18 +64,19 @@ files:
64
64
  - README.md
65
65
  - lib/mercadolibre.rb
66
66
  - lib/mercadolibre/api.rb
67
- - lib/mercadolibre/core/auth.rb
68
67
  - lib/mercadolibre/core/categories_and_listings.rb
69
68
  - lib/mercadolibre/core/collections.rb
70
69
  - lib/mercadolibre/core/items_and_searches.rb
71
70
  - lib/mercadolibre/core/locations_and_currencies.rb
72
- - lib/mercadolibre/core/order_management.rb
73
- - lib/mercadolibre/core/questions.rb
74
- - lib/mercadolibre/core/shippings.rb
75
- - lib/mercadolibre/core/users.rb
71
+ - lib/mercadolibre/core/metrics.rb
72
+ - lib/mercadolibre/core/oauth.rb
73
+ - lib/mercadolibre/core/orders_and_feedback.rb
74
+ - lib/mercadolibre/core/questions_and_answers.rb
75
+ - lib/mercadolibre/core/shipping.rb
76
+ - lib/mercadolibre/core/users_and_apps.rb
76
77
  - lib/mercadolibre/version.rb
77
78
  - lib/mercadopago/api.rb
78
- - lib/mercadopago/core/auth.rb
79
+ - lib/mercadopago/core/oauth.rb
79
80
  - lib/mercadopago/core/payments.rb
80
81
  homepage: https://github.com/unformattmh/mercadolibre
81
82
  licenses:
@@ -1,27 +0,0 @@
1
- module Mercadolibre
2
- module Core
3
- module Users
4
- def get_my_user
5
- get_request('/users/me', { access_token: @access_token }).body
6
- end
7
-
8
- def get_user(user_id)
9
- get_request("/users/#{user_id}").body
10
- end
11
-
12
- def get_users(user_ids)
13
- get_request('/users', { ids: user_ids.join(',') }).body
14
- end
15
-
16
- def get_seller(nickname)
17
- filters = { nickname: nickname, limit: 0 }
18
- response = get_request("/sites/#{@site}/search", filters)[:body]
19
- get_user(response.seller.id)
20
- end
21
-
22
- def get_user_accepted_payment_methods(user_id)
23
- get_request("/users/#{user_id}/accepted_payment_methods").body
24
- end
25
- end
26
- end
27
- end