neto_api_ruby 0.0.2 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.DS_Store +0 -0
- data/Gemfile +1 -0
- data/README.md +17 -1
- data/lib/neto_api_ruby.rb +27 -13
- data/lib/neto_api_ruby/version.rb +1 -1
- data/neto_api_ruby-0.0.2.gem +0 -0
- data/neto_api_ruby-0.0.3.gem +0 -0
- data/neto_api_ruby-0.0.4.gem +0 -0
- data/neto_api_ruby.gemspec +5 -7
- metadata +7 -99
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 430d20bb2d81c3e7123252bd2d882e26059a7c47
|
4
|
+
data.tar.gz: 1657ef15cfc8df9da0b9148bbc08044faae4df8c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b779157a807798dc1f63baeb00653cf28170f89cda0b79652d516798fb5f89aea7d72d9b4a0f87ce22b011fe77f5302e74d4dc59de46e999e288da782066ca03
|
7
|
+
data.tar.gz: 4500e3d90708a4137c9ed15d8d3a07c7f02f68b48e1371456cbc15911fa648f74ff79b996418b7fe0709a7db8e876caba74dd942dddbec504ae83077f59e9f5a
|
data/.DS_Store
ADDED
Binary file
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
A thin Ruby wrapper for connecting to NETO REST API. Easily interact with the NETO API using this library.
|
4
4
|
|
5
|
+
This is hobby gem for personal use.
|
6
|
+
|
5
7
|
## Installation
|
6
8
|
|
7
9
|
$ gem install neto_api_ruby
|
@@ -27,16 +29,30 @@ neto = NetoApiRuby::API.new(neto_host_url, api_key)
|
|
27
29
|
| ---------- | -------- | ------------------------------------------------------------ | --------------------------- |
|
28
30
|
| `query` | `Hash` | For get products, data field filter should be specified. | {"InventoryID"=> ["100"]} |
|
29
31
|
| | | By default IsActive Filter is specified. | |
|
32
|
+
| `attribute`| `Hash` | For create/update products, attributes including sku/name etc| { "SKU" => "your sku", |
|
33
|
+
| | | must be specified. | "Name"=> "name", |
|
34
|
+
| | | | "RRP"=>"100.00"} |
|
35
|
+
|
36
|
+
|
30
37
|
|
31
38
|
### get_products
|
32
39
|
- `.get_products(query)`
|
33
40
|
|
41
|
+
### create_product
|
42
|
+
- `.create_product(attribute)`
|
43
|
+
|
44
|
+
### update_product
|
45
|
+
- `.update_product(attribute)`
|
46
|
+
|
47
|
+
-please note that 'SKU' is the unique primary key to products.
|
48
|
+
|
34
49
|
#### Response
|
35
50
|
|
36
51
|
All methods will return [HTTParty::Response](https://github.com/jnunemaker/httparty) object.
|
37
52
|
|
38
53
|
## Release History
|
39
|
-
- 2017-02-08 - 0.0.1 - Beta release.
|
54
|
+
- 2017-02-08 - 0.0.1 - Beta release.
|
55
|
+
- 2017-02-08 - 0.0.5 - Beta release, only access product including create/update/search
|
40
56
|
|
41
57
|
|
42
58
|
## Contributing
|
data/lib/neto_api_ruby.rb
CHANGED
@@ -15,13 +15,13 @@ module NetoApiRuby
|
|
15
15
|
"NETOAPI_KEY" => api_key
|
16
16
|
}
|
17
17
|
@body_defaults = {
|
18
|
-
# "Filter"=> {
|
19
18
|
"IsActive"=> ["True"],
|
20
19
|
"OutputSelector"=> [
|
21
20
|
"ID",
|
22
21
|
"SKU",
|
23
22
|
"ParentSKU",
|
24
23
|
"InventoryID",
|
24
|
+
"Virtual",
|
25
25
|
"Name",
|
26
26
|
"Brand",
|
27
27
|
"Description",
|
@@ -41,9 +41,7 @@ module NetoApiRuby
|
|
41
41
|
"WarehouseQuantity",
|
42
42
|
"TaxInclusive"
|
43
43
|
]
|
44
|
-
|
45
|
-
}
|
46
|
-
|
44
|
+
}
|
47
45
|
end
|
48
46
|
#public methods
|
49
47
|
#query - A Hash with query params, insert into request body
|
@@ -52,10 +50,16 @@ module NetoApiRuby
|
|
52
50
|
do_request :post, 'GetItem', query
|
53
51
|
end
|
54
52
|
|
53
|
+
def create_product attributes={}
|
54
|
+
do_request :post, 'AddItem', attributes
|
55
|
+
end
|
56
|
+
|
57
|
+
def update_product attributes={}
|
58
|
+
do_request :post, 'UpdateItem', attributes
|
59
|
+
end
|
55
60
|
|
56
61
|
protected
|
57
62
|
#Internal methods: Append data as query params to an endpoint
|
58
|
-
|
59
63
|
def do_request method, action, query={}
|
60
64
|
url = @neto_url
|
61
65
|
options = { }
|
@@ -65,14 +69,24 @@ module NetoApiRuby
|
|
65
69
|
#set headers
|
66
70
|
options[:headers] = @header_args.merge(header_action)
|
67
71
|
#set body
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
72
|
+
case action
|
73
|
+
when 'GetItem'
|
74
|
+
if query.empty?
|
75
|
+
options.merge!(body: {"Filter"=> @body_defaults}.to_json)
|
76
|
+
else
|
77
|
+
body_args = @body_defaults.merge(query)
|
78
|
+
options.merge!(body: {"Filter"=> body_args}.to_json)
|
79
|
+
end
|
80
|
+
when 'AddItem'
|
81
|
+
options.merge!(body: {"Item"=> [query]}.to_json)
|
82
|
+
when 'UpdateItem'
|
83
|
+
options.merge!(body: {"Item"=> [query]}.to_json)
|
84
|
+
end
|
85
|
+
HTTParty.send(method, url, options)
|
86
|
+
end
|
76
87
|
|
77
88
|
end
|
78
89
|
end
|
90
|
+
|
91
|
+
|
92
|
+
|
Binary file
|
Binary file
|
Binary file
|
data/neto_api_ruby.gemspec
CHANGED
@@ -30,11 +30,9 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.bindir = "exe"
|
31
31
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
32
32
|
spec.require_paths = ["lib"]
|
33
|
-
|
34
|
-
spec.add_development_dependency "bundler", "~> 1.13"
|
35
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
36
|
-
spec.
|
37
|
-
spec.
|
38
|
-
spec.add_runtime_dependency "httparty", "~> 0.14", ">= 0.14.0"
|
39
|
-
spec.add_runtime_dependency "json", "~> 2.0.3", ">= 2.0.0"
|
33
|
+
|
34
|
+
# spec.add_development_dependency "bundler", "~> 1.13"
|
35
|
+
# spec.add_development_dependency "rake", "~> 10.0"
|
36
|
+
# spec.add_runtime_dependency "httparty", "~> 0.13.7", ">= 0.13.0"
|
37
|
+
# spec.add_runtime_dependency "json", "~> 1.7.7", ">= 1.7.0"
|
40
38
|
end
|
metadata
CHANGED
@@ -1,111 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: neto_api_ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- bono
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
12
|
-
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: bundler
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '1.13'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '1.13'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: rake
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '10.0'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '10.0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: minitest
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '5.0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '5.0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: fakeweb
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 1.3.0
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: 1.3.0
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: httparty
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0.14'
|
76
|
-
- - ">="
|
77
|
-
- !ruby/object:Gem::Version
|
78
|
-
version: 0.14.0
|
79
|
-
type: :runtime
|
80
|
-
prerelease: false
|
81
|
-
version_requirements: !ruby/object:Gem::Requirement
|
82
|
-
requirements:
|
83
|
-
- - "~>"
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: '0.14'
|
86
|
-
- - ">="
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: 0.14.0
|
89
|
-
- !ruby/object:Gem::Dependency
|
90
|
-
name: json
|
91
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - "~>"
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: 2.0.3
|
96
|
-
- - ">="
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
version: 2.0.0
|
99
|
-
type: :runtime
|
100
|
-
prerelease: false
|
101
|
-
version_requirements: !ruby/object:Gem::Requirement
|
102
|
-
requirements:
|
103
|
-
- - "~>"
|
104
|
-
- !ruby/object:Gem::Version
|
105
|
-
version: 2.0.3
|
106
|
-
- - ">="
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
version: 2.0.0
|
11
|
+
date: 2017-03-03 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
109
13
|
description: This gem provide a wrapper to deal with NETO REST API
|
110
14
|
email:
|
111
15
|
- bono.lau@gmail.com
|
@@ -113,6 +17,7 @@ executables: []
|
|
113
17
|
extensions: []
|
114
18
|
extra_rdoc_files: []
|
115
19
|
files:
|
20
|
+
- ".DS_Store"
|
116
21
|
- ".gitignore"
|
117
22
|
- ".travis.yml"
|
118
23
|
- CODE_OF_CONDUCT.md
|
@@ -125,6 +30,9 @@ files:
|
|
125
30
|
- lib/neto_api_ruby.rb
|
126
31
|
- lib/neto_api_ruby/version.rb
|
127
32
|
- neto_api_ruby-0.0.1.gem
|
33
|
+
- neto_api_ruby-0.0.2.gem
|
34
|
+
- neto_api_ruby-0.0.3.gem
|
35
|
+
- neto_api_ruby-0.0.4.gem
|
128
36
|
- neto_api_ruby.gemspec
|
129
37
|
homepage: https://github.com/bonogit/neto_api_ruby
|
130
38
|
licenses:
|