shipstation 0.16.5 → 0.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +5 -5
  2. data/MIT-LICENSE +0 -0
  3. data/Rakefile +0 -0
  4. data/lib/shipstation.rb +13 -0
  5. data/lib/shipstation/api_operations/create.rb +0 -0
  6. data/lib/shipstation/api_operations/delete.rb +0 -0
  7. data/lib/shipstation/api_operations/list.rb +0 -0
  8. data/lib/shipstation/api_operations/retrieve.rb +0 -0
  9. data/lib/shipstation/api_operations/update.rb +0 -0
  10. data/lib/shipstation/api_resource.rb +0 -0
  11. data/lib/shipstation/carrier.rb +3 -2
  12. data/lib/shipstation/customer.rb +0 -0
  13. data/lib/shipstation/order.rb +6 -0
  14. data/lib/shipstation/product.rb +0 -0
  15. data/lib/shipstation/shipment.rb +5 -5
  16. data/lib/shipstation/store.rb +1 -0
  17. data/lib/shipstation/tag.rb +0 -0
  18. data/lib/shipstation/version.rb +1 -1
  19. data/lib/shipstation/warehouse.rb +0 -0
  20. data/lib/shipstation/webhook.rb +18 -0
  21. data/lib/tasks/shipstation_tasks.rake +0 -0
  22. data/test/dummy/Gemfile +0 -0
  23. data/test/dummy/Gemfile.lock +3 -3
  24. data/test/dummy/README.rdoc +0 -0
  25. data/test/dummy/Rakefile +0 -0
  26. data/test/dummy/app/assets/javascripts/application.js +0 -0
  27. data/test/dummy/app/assets/stylesheets/application.css +0 -0
  28. data/test/dummy/app/controllers/application_controller.rb +0 -0
  29. data/test/dummy/app/helpers/application_helper.rb +0 -0
  30. data/test/dummy/app/views/layouts/application.html.erb +0 -0
  31. data/test/dummy/config.ru +0 -0
  32. data/test/dummy/config/application.rb +0 -0
  33. data/test/dummy/config/boot.rb +0 -0
  34. data/test/dummy/config/database.yml +0 -0
  35. data/test/dummy/config/environment.rb +0 -0
  36. data/test/dummy/config/environments/development.rb +0 -0
  37. data/test/dummy/config/environments/production.rb +0 -0
  38. data/test/dummy/config/environments/test.rb +0 -0
  39. data/test/dummy/config/initializers/assets.rb +0 -0
  40. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -0
  41. data/test/dummy/config/initializers/cookies_serializer.rb +0 -0
  42. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -0
  43. data/test/dummy/config/initializers/inflections.rb +0 -0
  44. data/test/dummy/config/initializers/mime_types.rb +0 -0
  45. data/test/dummy/config/initializers/session_store.rb +0 -0
  46. data/test/dummy/config/initializers/shipstation.rb +0 -0
  47. data/test/dummy/config/initializers/wrap_parameters.rb +0 -0
  48. data/test/dummy/config/locales/en.yml +0 -0
  49. data/test/dummy/config/routes.rb +0 -0
  50. data/test/dummy/config/secrets.yml +0 -0
  51. data/test/dummy/db/seeds.rb +0 -0
  52. data/test/dummy/public/404.html +0 -0
  53. data/test/dummy/public/422.html +0 -0
  54. data/test/dummy/public/500.html +0 -0
  55. data/test/dummy/public/favicon.ico +0 -0
  56. data/test/dummy/public/robots.txt +0 -0
  57. data/test/dummy/test/test_helper.rb +0 -0
  58. data/test/shipstation_test.rb +0 -0
  59. data/test/test_helper.rb +0 -0
  60. metadata +28 -28
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 240727bb719dd095c8286f787e325450c2f25be7
4
- data.tar.gz: f408f6b33e098c292eb9e9e3a6983873772c06d3
2
+ SHA256:
3
+ metadata.gz: f332f2b5e19faf23d1e031965ca6433f6f29ff1d65b137f45be10e0c99b4e0e6
4
+ data.tar.gz: d11ba1d6c473bc18cc0151c0c095165f88b424ba2deb75c02d9afe506d0ae27d
5
5
  SHA512:
6
- metadata.gz: ff10333940a2c918ae056ec13f946e129efb635d81c6473d8a417aae7a884ee4c9a29eb344cd4c508713e0db6e030fea3f88d9f86a8f35cbc09be965f0288466
7
- data.tar.gz: ef89637da0992b4de87bd8ebbfb6d5a8e611a71a694cc1ee0dd2208894a256ec6d5c03102fdb8937815b272eda9d94fb98678bb35fd0a15cf6512d01d39a6327
6
+ metadata.gz: 85003a9637e7534d28929848f7581689dcff44db175cc2f47c54d123d27a19f2b8dd650e899e4bc141bdd1db7f5aecc1ec0d17b001d47d35a56c9fe18151447b
7
+ data.tar.gz: 9e8ad73887251a097758a5b80183cf6e33b02e6cca4dd31ebf8d1c872cbf200d0f199d3778d96ae601205c3b5c8ddf5ff729ce4d8bd3116cb908f6ee323bd412
data/MIT-LICENSE CHANGED
File without changes
data/Rakefile CHANGED
File without changes
data/lib/shipstation.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rest-client'
2
4
 
3
5
  require 'shipstation/api_operations/list'
@@ -15,8 +17,10 @@ require 'shipstation/store'
15
17
  require 'shipstation/warehouse'
16
18
  require 'shipstation/product'
17
19
  require 'shipstation/tag'
20
+ require 'shipstation/webhook'
18
21
 
19
22
  module Shipstation
23
+
20
24
  API_BASE = "https://ssapi.shipstation.com/"
21
25
 
22
26
  class ShipstationError < StandardError
@@ -26,6 +30,15 @@ module Shipstation
26
30
  end
27
31
  class ConfigurationError < ShipstationError;
28
32
  end
33
+ class ApiRequestError < ShipstationError
34
+ attr_reader :response_code, :response_headers, :response_body
35
+
36
+ def initialize(response_code:, response_headers:, response_body:)
37
+ @response_code = response_code
38
+ @response_headers = response_headers
39
+ @response_body = response_body
40
+ end
41
+ end
29
42
 
30
43
  class << self
31
44
  def username
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,9 +1,10 @@
1
1
  module Shipstation
2
2
  class Carrier < ApiResource
3
+ extend Shipstation::APIOperations::List
3
4
 
4
5
  class << self
5
- def list
6
- response = Shipstation.request(:get, 'carriers')
6
+ def list_services(params = {})
7
+ response = Shipstation.request(:get, 'carriers/listservices', params)
7
8
  return response
8
9
  end
9
10
  end
File without changes
@@ -26,6 +26,12 @@ module Shipstation
26
26
  response
27
27
  end
28
28
 
29
+ def create_bulk(params = {})
30
+ response = Shipstation.request(:post, 'orders/createorders', params)
31
+
32
+ response
33
+ end
34
+
29
35
  # params: { [:username], [:password], input: [ {:order_number, ... }, { :order_number, ... } ] }
30
36
  # todo: complete in future phase
31
37
  # def create_update_orders params
File without changes
@@ -4,15 +4,15 @@ module Shipstation
4
4
 
5
5
  class << self
6
6
  def get_rates(params = {})
7
- response = Shipstation.request(:post, "shipments/getrates", params)
8
-
9
- return response
7
+ Shipstation.request(:post, "shipments/getrates", params)
10
8
  end
11
9
 
12
10
  def create_label(params = {})
13
- response = Shipstation.request(:post, 'shipments/createlabel', params)
11
+ Shipstation.request(:post, 'shipments/createlabel', params)
12
+ end
14
13
 
15
- response
14
+ def void_label(params = {})
15
+ Shipstation.request(:post, 'shipments/voidlabel', params)
16
16
  end
17
17
  end
18
18
  end
@@ -1,5 +1,6 @@
1
1
  module Shipstation
2
2
  class Store < ApiResource
3
+ extend Shipstation::APIOperations::List
3
4
  extend Shipstation::APIOperations::Retrieve
4
5
  extend Shipstation::APIOperations::Update
5
6
 
File without changes
@@ -1,3 +1,3 @@
1
1
  module Shipstation
2
- VERSION = "0.16.5"
2
+ VERSION = "0.21"
3
3
  end
File without changes
@@ -0,0 +1,18 @@
1
+ module Shipstation
2
+ class Webhook < ApiResource
3
+
4
+ class << self
5
+ def subscribe(params={})
6
+ response = Shipstation.request(:post, 'webhooks/subscribe', params)
7
+
8
+ return response
9
+ end
10
+
11
+ def unsubscribe(object_id)
12
+ response = Shipstation.request(:delete, "webhooks/#{object_id}")
13
+
14
+ return response
15
+ end
16
+ end
17
+ end
18
+ end
File without changes
data/test/dummy/Gemfile CHANGED
File without changes
@@ -79,12 +79,12 @@ GEM
79
79
  mime-types-data (~> 3.2015)
80
80
  mime-types-data (3.2018.0812)
81
81
  mini_mime (1.0.1)
82
- mini_portile2 (2.3.0)
82
+ mini_portile2 (2.4.0)
83
83
  minitest (5.11.3)
84
84
  multi_json (1.13.1)
85
85
  netrc (0.11.0)
86
- nokogiri (1.8.4)
87
- mini_portile2 (~> 2.3.0)
86
+ nokogiri (1.10.4)
87
+ mini_portile2 (~> 2.4.0)
88
88
  rack (1.6.10)
89
89
  rack-test (0.6.3)
90
90
  rack (>= 1.0)
File without changes
data/test/dummy/Rakefile CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/test/dummy/config.ru CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/test/test_helper.rb CHANGED
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shipstation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.5
4
+ version: '0.21'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Dallimore
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-30 00:00:00.000000000 Z
11
+ date: 2021-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -49,6 +49,7 @@ files:
49
49
  - lib/shipstation/tag.rb
50
50
  - lib/shipstation/version.rb
51
51
  - lib/shipstation/warehouse.rb
52
+ - lib/shipstation/webhook.rb
52
53
  - lib/tasks/shipstation_tasks.rake
53
54
  - test/dummy/Gemfile
54
55
  - test/dummy/Gemfile.lock
@@ -112,52 +113,51 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
113
  - !ruby/object:Gem::Version
113
114
  version: '0'
114
115
  requirements: []
115
- rubyforge_project:
116
- rubygems_version: 2.5.1
116
+ rubygems_version: 3.2.15
117
117
  signing_key:
118
118
  specification_version: 4
119
119
  summary: A Ruby wrapper for the Shipstation API
120
120
  test_files:
121
- - test/dummy/app/controllers/application_controller.rb
122
- - test/dummy/app/views/layouts/application.html.erb
123
121
  - test/dummy/app/assets/javascripts/application.js
124
122
  - test/dummy/app/assets/stylesheets/application.css
123
+ - test/dummy/app/controllers/application_controller.rb
125
124
  - test/dummy/app/helpers/application_helper.rb
126
- - test/dummy/test/test_helper.rb
125
+ - test/dummy/app/views/layouts/application.html.erb
126
+ - test/dummy/bin/bundle
127
+ - test/dummy/bin/rails
127
128
  - test/dummy/bin/rake
128
129
  - test/dummy/bin/setup
129
- - test/dummy/bin/bundle
130
130
  - test/dummy/bin/spring
131
- - test/dummy/bin/rails
132
- - test/dummy/config/secrets.yml
133
- - test/dummy/config/routes.rb
134
- - test/dummy/config/locales/en.yml
135
- - test/dummy/config/environments/production.rb
136
- - test/dummy/config/environments/development.rb
137
- - test/dummy/config/environments/test.rb
138
- - test/dummy/config/environment.rb
139
131
  - test/dummy/config/application.rb
140
- - test/dummy/config/database.yml
141
132
  - test/dummy/config/boot.rb
133
+ - test/dummy/config/database.yml
134
+ - test/dummy/config/environment.rb
135
+ - test/dummy/config/environments/development.rb
136
+ - test/dummy/config/environments/production.rb
137
+ - test/dummy/config/environments/test.rb
138
+ - test/dummy/config/initializers/assets.rb
142
139
  - test/dummy/config/initializers/backtrace_silencers.rb
143
- - test/dummy/config/initializers/mime_types.rb
140
+ - test/dummy/config/initializers/cookies_serializer.rb
144
141
  - test/dummy/config/initializers/filter_parameter_logging.rb
142
+ - test/dummy/config/initializers/inflections.rb
143
+ - test/dummy/config/initializers/mime_types.rb
145
144
  - test/dummy/config/initializers/session_store.rb
146
- - test/dummy/config/initializers/wrap_parameters.rb
147
- - test/dummy/config/initializers/assets.rb
148
- - test/dummy/config/initializers/cookies_serializer.rb
149
145
  - test/dummy/config/initializers/shipstation.rb
150
- - test/dummy/config/initializers/inflections.rb
146
+ - test/dummy/config/initializers/wrap_parameters.rb
147
+ - test/dummy/config/locales/en.yml
148
+ - test/dummy/config/routes.rb
149
+ - test/dummy/config/secrets.yml
151
150
  - test/dummy/config.ru
152
- - test/dummy/Rakefile
153
- - test/dummy/public/favicon.ico
154
- - test/dummy/public/422.html
155
- - test/dummy/public/500.html
156
- - test/dummy/public/404.html
157
- - test/dummy/public/robots.txt
158
151
  - test/dummy/db/seeds.rb
159
152
  - test/dummy/Gemfile
160
153
  - test/dummy/Gemfile.lock
154
+ - test/dummy/public/404.html
155
+ - test/dummy/public/422.html
156
+ - test/dummy/public/500.html
157
+ - test/dummy/public/favicon.ico
158
+ - test/dummy/public/robots.txt
159
+ - test/dummy/Rakefile
161
160
  - test/dummy/README.rdoc
161
+ - test/dummy/test/test_helper.rb
162
162
  - test/shipstation_test.rb
163
163
  - test/test_helper.rb