Creizer-Meli 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +137 -0
  4. data/Rakefile +10 -0
  5. data/creizer-meli.gemspec +33 -0
  6. data/docs/Attributes.md +31 -0
  7. data/docs/AttributesValueStruct.md +19 -0
  8. data/docs/AttributesValues.md +21 -0
  9. data/docs/CategoriesApi.md +150 -0
  10. data/docs/InlineObject.md +27 -0
  11. data/docs/Item.md +41 -0
  12. data/docs/ItemPictures.md +17 -0
  13. data/docs/ItemsApi.md +152 -0
  14. data/docs/ItemsHealthApi.md +150 -0
  15. data/docs/OAuth20Api.md +117 -0
  16. data/docs/RestClientApi.md +204 -0
  17. data/docs/Variations.md +25 -0
  18. data/docs/VariationsAttributeCombinations.md +21 -0
  19. data/examples/get_token.rb +21 -0
  20. data/examples/restclient_post.rb +73 -0
  21. data/lib/meli.rb +52 -0
  22. data/lib/meli/api/categories_api.rb +216 -0
  23. data/lib/meli/api/items_api.rb +226 -0
  24. data/lib/meli/api/items_health_api.rb +216 -0
  25. data/lib/meli/api/o_auth20_api.rb +178 -0
  26. data/lib/meli/api/rest_client_api.rb +306 -0
  27. data/lib/meli/api_client.rb +387 -0
  28. data/lib/meli/api_error.rb +57 -0
  29. data/lib/meli/configuration.rb +297 -0
  30. data/lib/meli/models/attributes.rb +273 -0
  31. data/lib/meli/models/attributes_value_struct.rb +215 -0
  32. data/lib/meli/models/attributes_values.rb +226 -0
  33. data/lib/meli/models/inline_object.rb +251 -0
  34. data/lib/meli/models/item.rb +375 -0
  35. data/lib/meli/models/item_pictures.rb +206 -0
  36. data/lib/meli/models/variations.rb +246 -0
  37. data/lib/meli/models/variations_attribute_combinations.rb +224 -0
  38. data/lib/meli/version.rb +15 -0
  39. data/spec/api/categories_api_spec.rb +70 -0
  40. data/spec/api/items_api_spec.rb +71 -0
  41. data/spec/api/items_health_api_spec.rb +70 -0
  42. data/spec/api/o_auth20_api_spec.rb +65 -0
  43. data/spec/api/rest_client_api_spec.rb +85 -0
  44. data/spec/api_client_spec.rb +226 -0
  45. data/spec/configuration_spec.rb +42 -0
  46. data/spec/models/attributes_spec.rb +83 -0
  47. data/spec/models/attributes_value_struct_spec.rb +47 -0
  48. data/spec/models/attributes_values_spec.rb +53 -0
  49. data/spec/models/inline_object_spec.rb +71 -0
  50. data/spec/models/item_pictures_spec.rb +41 -0
  51. data/spec/models/item_spec.rb +113 -0
  52. data/spec/models/variations_attribute_combinations_spec.rb +53 -0
  53. data/spec/models/variations_spec.rb +65 -0
  54. data/spec/spec_helper.rb +111 -0
  55. metadata +173 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 872ea3fc54681abb85d61906c2bd003abae15793
4
+ data.tar.gz: 5513d1c5ab1239a2f3b826e8f23d08692c546e49
5
+ SHA512:
6
+ metadata.gz: b5fb3cb9d98ae965091e715fac6a5815e67076924ca8617d9f730926e0b088cab39e0c533a52024d58c44d0f6f590166e90b4724a4596bee83e5920e40e945fe
7
+ data.tar.gz: 98a0e5f88adfd3e31a095156a9e7c6379013b995e65a62788f173ba44401764bacce616e840245a8d187aa877ef2eef0997767755ba8b74b02a6058494f7db2d
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'rake', '~> 13.0.1'
7
+ gem 'pry-byebug'
8
+ gem 'rubocop', '~> 0.66.0'
9
+ end
@@ -0,0 +1,137 @@
1
+
2
+ <h1 align="center">
3
+ <a href="https://developers.mercadolibre.com">
4
+ <img src="https://user-images.githubusercontent.com/1153516/29861072-689ec57e-8d3e-11e7-8368-dd923543258f.jpg" alt="Mercado Libre Developers" width="230"></a>
5
+ </a>
6
+ <br><br>
7
+ MercadoLibre's Ruby SDK
8
+ <br>
9
+ </h1>
10
+
11
+ <h4 align="center">This is the official Ruby SDK for MercadoLibre's Platform.</h4>
12
+
13
+ ## Installation
14
+
15
+ ### Build a gem
16
+
17
+ To build the Ruby code into a gem:
18
+
19
+ ```shell
20
+ gem build meli.gemspec
21
+ ```
22
+
23
+ Then either install the gem locally:
24
+
25
+ ```shell
26
+ gem install ./meli-3.0.0.gem
27
+ ```
28
+
29
+ (for development, run `gem install --dev ./meli-3.0.0.gem` to install the development dependencies)
30
+
31
+ or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
32
+
33
+ Finally add this to the Gemfile:
34
+
35
+ gem 'meli', '~> 3.0.0'
36
+
37
+ ### Install from Git
38
+
39
+ If the Ruby gem is hosted at a git repository: [https://github.com/mercadolibre/ruby-sdk](https://github.com/mercadolibre/ruby-sdk), then add the following in the Gemfile:
40
+
41
+ gem 'meli', :git => 'https://github.com/mercadolibre/ruby-sdk.git'
42
+
43
+ ### Include the Ruby code directly
44
+
45
+ Include the Ruby code directly using `-I` as follows:
46
+
47
+ ```shell
48
+ ruby -Ilib script.rb
49
+ ```
50
+
51
+ ## Usage
52
+ ```ruby
53
+ # Auth URLs Options by country
54
+
55
+ # 1: "https://auth.mercadolibre.com.ar"
56
+ # 2: "https://auth.mercadolivre.com.br"
57
+ # 3: "https://auth.mercadolibre.com.co"
58
+ # 4: "https://auth.mercadolibre.com.mx"
59
+ # 5: "https://auth.mercadolibre.com.uy"
60
+ # 6: "https://auth.mercadolibre.cl"
61
+ # 7: "https://auth.mercadolibre.com.cr"
62
+ # 8: "https://auth.mercadolibre.com.ec"
63
+ # 9: "https://auth.mercadolibre.com.ve"
64
+ # 10: "https://auth.mercadolibre.com.pa"
65
+ # 11: "https://auth.mercadolibre.com.pe"
66
+ # 12: "https://auth.mercadolibre.com.do"
67
+ # 13: "https://auth.mercadolibre.com.bo"
68
+ # 14: "https://auth.mercadolibre.com.py"
69
+
70
+ # For example in your app
71
+ client_id = "Your client_id"
72
+ redirect_uri = "Your redirect uri"
73
+ puts '<a href= "https://auth.mercadolibre.com.ar/authorization?response_type=code&client_id=' + client_id + '&redirect_uri=' + redirect_uri +'">'+ Authenticate + '</a>'
74
+ ```
75
+ his 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.
76
+
77
+ 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
78
+
79
+
80
+ ## Examples for OAuth - get token
81
+ ```ruby
82
+ # load the gem
83
+ require 'Meli'
84
+
85
+ api_instance = Meli::OAuth20Api.new
86
+ opts = {
87
+ grant_type: 'authorization_code', # String |
88
+ client_id: 'client_id_example', # String |
89
+ client_secret: 'client_secret_example', # String |
90
+ redirect_uri: 'redirect_uri_example', # String |
91
+ code: 'code_example', # String |
92
+ refresh_token: 'refresh_token_example' # String |
93
+ }
94
+
95
+ begin
96
+ #Request Access Token
97
+ result = api_instance.get_token(opts)
98
+ p result
99
+ rescue Meli::ApiError => e
100
+ puts "Exception when calling OAuth20Api->get_token: #{e}"
101
+ end
102
+ ```
103
+
104
+
105
+ ## Example using the RestClient with a POST Item
106
+ ```ruby
107
+ # load the gem
108
+ require 'Meli'
109
+
110
+ api_instance = Meli::RestClientApi.new
111
+ resource = 'resource_example' # String |
112
+ access_token = 'access_token_example' # String |
113
+ body = nil # Object |
114
+
115
+ begin
116
+ #Resourse path POST
117
+ result = api_instance.resource_post(resource, access_token, body)
118
+ p result
119
+ rescue Meli::ApiError => e
120
+ puts "Exception when calling RestClientApi->resource_post: #{e}"
121
+ end
122
+ ```
123
+
124
+
125
+ ## Documentation & Important notes
126
+
127
+ ##### The URIs are relative to https://api.mercadolibre.com
128
+
129
+ ##### The Authorization URLs:
130
+ ###### Remember set your correct country ID
131
+ ###### https://auth.mercadolibre.{country_domain}
132
+
133
+ ##### All docs for the library are located [here](https://github.com/mercadolibre/ruby-sdk/tree/master/docs)
134
+
135
+ ##### Check out our examples codes in the folder [examples](https://github.com/mercadolibre/ruby-sdk/tree/master/examples)
136
+
137
+ ##### Don’t forget to check out our [developer site](https://developers.mercadolibre.com/)
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+ task default: :spec
8
+ rescue LoadError
9
+ # no rspec available
10
+ end
@@ -0,0 +1,33 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ =begin
4
+ #MELI Markeplace SDK
5
+
6
+ #This is the official Ruby SDK for the MercadoLibre Marketplace platform.
7
+ =end
8
+
9
+ $:.push File.expand_path("../lib", __FILE__)
10
+ require "Meli/version"
11
+
12
+ Gem::Specification.new do |s|
13
+ s.name = "Creizer-Meli"
14
+ s.version = Meli::VERSION
15
+ s.platform = Gem::Platform::RUBY
16
+ s.authors = ["MELI"]
17
+ s.email = [""]
18
+ s.homepage = "https://github.com/mercadolibre/ruby-sdk"
19
+ s.summary = "MELI Markeplace SDK Ruby Gem"
20
+ s.description = "This is the official Ruby SDK for the MercadoLibre Marketplace platform."
21
+ s.license = "Unlicense"
22
+ s.required_ruby_version = ">= 1.9"
23
+
24
+ s.add_runtime_dependency 'typhoeus', '~> 1.0', '>= 1.0.1'
25
+ s.add_runtime_dependency 'json', '~> 2.3', '>= 2.3.0'
26
+
27
+ s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0'
28
+
29
+ s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? }
30
+ s.test_files = `find spec/*`.split("\n")
31
+ s.executables = []
32
+ s.require_paths = ["lib"]
33
+ end
@@ -0,0 +1,31 @@
1
+ # Meli::Attributes
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **id** | **String** | | [optional]
8
+ **name** | **String** | | [optional]
9
+ **value_id** | **String** | | [optional]
10
+ **value_name** | **String** | | [optional]
11
+ **value_struct** | [**AttributesValueStruct**](AttributesValueStruct.md) | | [optional]
12
+ **values** | [**Array&lt;AttributesValues&gt;**](AttributesValues.md) | | [optional]
13
+ **attribute_group_id** | **String** | | [optional]
14
+ **attribute_group_name** | **String** | | [optional]
15
+
16
+ ## Code Sample
17
+
18
+ ```ruby
19
+ require 'Meli'
20
+
21
+ instance = Meli::Attributes.new(id: DATA_STORAGE_CAPACITY,
22
+ name: Capacidad de almacenamiento de datos,
23
+ value_id: null,
24
+ value_name: 8 GB,
25
+ value_struct: null,
26
+ values: null,
27
+ attribute_group_id: OTHERS,
28
+ attribute_group_name: Otros)
29
+ ```
30
+
31
+
@@ -0,0 +1,19 @@
1
+ # Meli::AttributesValueStruct
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **number** | **Float** | | [optional]
8
+ **unit** | **String** | | [optional]
9
+
10
+ ## Code Sample
11
+
12
+ ```ruby
13
+ require 'Meli'
14
+
15
+ instance = Meli::AttributesValueStruct.new(number: 8,
16
+ unit: GB)
17
+ ```
18
+
19
+
@@ -0,0 +1,21 @@
1
+ # Meli::AttributesValues
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **id** | **String** | | [optional]
8
+ **name** | **String** | | [optional]
9
+ **struct** | [**AttributesValueStruct**](AttributesValueStruct.md) | | [optional]
10
+
11
+ ## Code Sample
12
+
13
+ ```ruby
14
+ require 'Meli'
15
+
16
+ instance = Meli::AttributesValues.new(id: null,
17
+ name: 8 GB,
18
+ struct: null)
19
+ ```
20
+
21
+
@@ -0,0 +1,150 @@
1
+ # Meli::CategoriesApi
2
+
3
+ All URIs are relative to *https://api.mercadolibre.com*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**categories_category_id_get**](CategoriesApi.md#categories_category_id_get) | **GET** /categories/{category_id} | Return by category.
8
+ [**sites_site_id_categories_get**](CategoriesApi.md#sites_site_id_categories_get) | **GET** /sites/{site_id}/categories | Return a categories by site.
9
+ [**sites_site_id_domain_discovery_search_get**](CategoriesApi.md#sites_site_id_domain_discovery_search_get) | **GET** /sites/{site_id}/domain_discovery/search | Predictor
10
+
11
+
12
+
13
+ ## categories_category_id_get
14
+
15
+ > Object categories_category_id_get(category_id)
16
+
17
+ Return by category.
18
+
19
+ ### Example
20
+
21
+ ```ruby
22
+ # load the gem
23
+ require 'Meli'
24
+
25
+ api_instance = Meli::CategoriesApi.new
26
+ category_id = 'category_id_example' # String |
27
+
28
+ begin
29
+ #Return by category.
30
+ result = api_instance.categories_category_id_get(category_id)
31
+ p result
32
+ rescue Meli::ApiError => e
33
+ puts "Exception when calling CategoriesApi->categories_category_id_get: #{e}"
34
+ end
35
+ ```
36
+
37
+ ### Parameters
38
+
39
+
40
+ Name | Type | Description | Notes
41
+ ------------- | ------------- | ------------- | -------------
42
+ **category_id** | **String**| |
43
+
44
+ ### Return type
45
+
46
+ **Object**
47
+
48
+ ### Authorization
49
+
50
+ No authorization required
51
+
52
+ ### HTTP request headers
53
+
54
+ - **Content-Type**: Not defined
55
+ - **Accept**: application/json
56
+
57
+
58
+ ## sites_site_id_categories_get
59
+
60
+ > Object sites_site_id_categories_get(site_id)
61
+
62
+ Return a categories by site.
63
+
64
+ ### Example
65
+
66
+ ```ruby
67
+ # load the gem
68
+ require 'Meli'
69
+
70
+ api_instance = Meli::CategoriesApi.new
71
+ site_id = 'site_id_example' # String |
72
+
73
+ begin
74
+ #Return a categories by site.
75
+ result = api_instance.sites_site_id_categories_get(site_id)
76
+ p result
77
+ rescue Meli::ApiError => e
78
+ puts "Exception when calling CategoriesApi->sites_site_id_categories_get: #{e}"
79
+ end
80
+ ```
81
+
82
+ ### Parameters
83
+
84
+
85
+ Name | Type | Description | Notes
86
+ ------------- | ------------- | ------------- | -------------
87
+ **site_id** | **String**| |
88
+
89
+ ### Return type
90
+
91
+ **Object**
92
+
93
+ ### Authorization
94
+
95
+ No authorization required
96
+
97
+ ### HTTP request headers
98
+
99
+ - **Content-Type**: Not defined
100
+ - **Accept**: application/json
101
+
102
+
103
+ ## sites_site_id_domain_discovery_search_get
104
+
105
+ > Object sites_site_id_domain_discovery_search_get(site_id, q, limit)
106
+
107
+ Predictor
108
+
109
+ ### Example
110
+
111
+ ```ruby
112
+ # load the gem
113
+ require 'Meli'
114
+
115
+ api_instance = Meli::CategoriesApi.new
116
+ site_id = 'site_id_example' # String |
117
+ q = 'q_example' # String |
118
+ limit = 'limit_example' # String |
119
+
120
+ begin
121
+ #Predictor
122
+ result = api_instance.sites_site_id_domain_discovery_search_get(site_id, q, limit)
123
+ p result
124
+ rescue Meli::ApiError => e
125
+ puts "Exception when calling CategoriesApi->sites_site_id_domain_discovery_search_get: #{e}"
126
+ end
127
+ ```
128
+
129
+ ### Parameters
130
+
131
+
132
+ Name | Type | Description | Notes
133
+ ------------- | ------------- | ------------- | -------------
134
+ **site_id** | **String**| |
135
+ **q** | **String**| |
136
+ **limit** | **String**| |
137
+
138
+ ### Return type
139
+
140
+ **Object**
141
+
142
+ ### Authorization
143
+
144
+ No authorization required
145
+
146
+ ### HTTP request headers
147
+
148
+ - **Content-Type**: Not defined
149
+ - **Accept**: application/json
150
+
@@ -0,0 +1,27 @@
1
+ # Meli::InlineObject
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **grant_type** | **String** | | [optional]
8
+ **client_id** | **String** | | [optional]
9
+ **client_secret** | **String** | | [optional]
10
+ **redirect_uri** | **String** | | [optional]
11
+ **code** | **String** | | [optional]
12
+ **refresh_token** | **String** | | [optional]
13
+
14
+ ## Code Sample
15
+
16
+ ```ruby
17
+ require 'Meli'
18
+
19
+ instance = Meli::InlineObject.new(grant_type: authorization_code,
20
+ client_id: null,
21
+ client_secret: null,
22
+ redirect_uri: null,
23
+ code: null,
24
+ refresh_token: null)
25
+ ```
26
+
27
+