qbo_api 2.0.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.env.test +0 -4
- data/README.md +6 -0
- data/lib/qbo_api/connection.rb +6 -3
- data/lib/qbo_api/supporting.rb +15 -0
- data/lib/qbo_api/version.rb +1 -1
- data/qbo_api.gemspec +0 -2
- metadata +3 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 162fa8b773e3b73b82ea03e73d06ded342f6ac3bc7daafc9c02cc6a965a34aa7
|
4
|
+
data.tar.gz: a074c58fe2826531c2fe7a04cee0fecaf4021aac7e2c9a64fc30062fd3602fd5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 29a5b45354f2dbd9978fee3498dbfa96b660c6c747b93432b00836079f64e35d1448463ba13f055fc866e85804981f0a8110b6a429f23fc118da8a9f732d003b
|
7
|
+
data.tar.gz: f733937e458917500539ad443c8bfe61d29584b00caa2d8b7824d525170d2058806a7ad5e6a6a485ac05a6adf45be18feed8afff53372a7b7f643dd1fa1d40c2
|
data/.env.test
CHANGED
data/README.md
CHANGED
@@ -206,6 +206,12 @@ api.all(:clients).to_a
|
|
206
206
|
p response['Id'] # => 1
|
207
207
|
```
|
208
208
|
|
209
|
+
|
210
|
+
### Email a transaction entity
|
211
|
+
```ruby
|
212
|
+
api.send_invoice(invoice_id: 1, email_address: 'billy@joe.com')
|
213
|
+
```
|
214
|
+
|
209
215
|
### Uploading an attachment
|
210
216
|
```ruby
|
211
217
|
payload = {"AttachableRef":
|
data/lib/qbo_api/connection.rb
CHANGED
@@ -37,14 +37,17 @@ class QboApi
|
|
37
37
|
}
|
38
38
|
end
|
39
39
|
|
40
|
-
def request(method, path:, entity: nil, payload: nil, params: nil)
|
41
|
-
raw_response = raw_request(method, conn: connection, path: path, params: params, payload: payload)
|
40
|
+
def request(method, path:, entity: nil, payload: nil, params: nil, headers: nil)
|
41
|
+
raw_response = raw_request(method, conn: connection, path: path, params: params, payload: payload, headers: headers)
|
42
42
|
response(raw_response, entity: entity)
|
43
43
|
end
|
44
44
|
|
45
|
-
def raw_request(method, conn:, path:, payload: nil, params: nil)
|
45
|
+
def raw_request(method, conn:, path:, payload: nil, params: nil, headers: nil)
|
46
46
|
path = finalize_path(path, method: method, params: params)
|
47
|
+
|
47
48
|
conn.public_send(method) do |req|
|
49
|
+
req.headers = headers if headers
|
50
|
+
|
48
51
|
case method
|
49
52
|
when :get, :delete
|
50
53
|
req.url path
|
data/lib/qbo_api/supporting.rb
CHANGED
@@ -16,5 +16,20 @@ class QboApi
|
|
16
16
|
path = add_params_to_path(path: path, params: params) if params
|
17
17
|
request(:get, path: path)
|
18
18
|
end
|
19
|
+
|
20
|
+
def deliver(entity, entity_id:, email_address: nil)
|
21
|
+
valid_entities = %i(invoice estimate purchaseorder creditmemo salesreceipt refundreceipt)
|
22
|
+
unless valid_entities.include?(entity.to_sym)
|
23
|
+
raise ArgumentError, "Invalid entity type '#{entity}'. Must be one of: #{valid_entities.join(', ')}"
|
24
|
+
end
|
25
|
+
|
26
|
+
path = "#{realm_id}/#{entity}/#{entity_id}/send"
|
27
|
+
unless email_address.nil?
|
28
|
+
params = { minorversion: 63, sendTo: email_address }
|
29
|
+
path = add_params_to_path(path: path, params: params)
|
30
|
+
end
|
31
|
+
headers = { 'Content-Type' => 'application/octet-stream' }
|
32
|
+
request(:post, path: path, headers: headers)
|
33
|
+
end
|
19
34
|
end
|
20
35
|
end
|
data/lib/qbo_api/version.rb
CHANGED
data/qbo_api.gemspec
CHANGED
@@ -22,8 +22,6 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.add_development_dependency "rake"
|
23
23
|
spec.add_development_dependency "rspec"
|
24
24
|
spec.add_development_dependency 'webmock'
|
25
|
-
spec.add_development_dependency 'rexml'
|
26
|
-
spec.add_development_dependency 'simple_oauth'
|
27
25
|
spec.add_development_dependency 'dotenv'
|
28
26
|
spec.add_development_dependency 'vcr'
|
29
27
|
spec.add_development_dependency 'amazing_print'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: qbo_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christian Pelczarski
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-04-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -66,34 +66,6 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rexml
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: simple_oauth
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
69
|
- !ruby/object:Gem::Dependency
|
98
70
|
name: dotenv
|
99
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -247,7 +219,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
247
219
|
- !ruby/object:Gem::Version
|
248
220
|
version: '0'
|
249
221
|
requirements: []
|
250
|
-
rubygems_version: 3.
|
222
|
+
rubygems_version: 3.2.22
|
251
223
|
signing_key:
|
252
224
|
specification_version: 4
|
253
225
|
summary: Ruby JSON-only client for QuickBooks Online API v3. Built on top of the Faraday
|