seeuletter 1.3.0 → 1.4.0
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/README.md +63 -0
- data/examples/README.md +10 -0
- data/examples/accounts.rb +27 -0
- data/examples/invoices.rb +21 -0
- data/lib/seeuletter/client.rb +10 -0
- data/lib/seeuletter/resources/account.rb +30 -0
- data/lib/seeuletter/resources/invoice.rb +22 -0
- data/lib/seeuletter/version.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4ae03460189501286ccadd04b8fed5ec5cbaf1fc457b550f0ca559fc655450f0
|
4
|
+
data.tar.gz: e8b36e0d48592e84e60456c9870956a84f85dabd618a8654e6de491925460f97
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ab2e688c5ca19522f28cc73a601d2772290f8be0ae9e1777a1fd833b45a65c0335ef94723324ee78db793a3f2de4e4b2503036a162372d6c28907127d99e535
|
7
|
+
data.tar.gz: 5b9c39c72c7cd3bdf39f30d445ecd6eb2a15fd898f5ca05bd838b0aed6b8f4ee1560f92d07b1170fb10488dccb84fed59a6f1f92e054241c99ad8facd9935eb0
|
data/README.md
CHANGED
@@ -15,6 +15,9 @@ Supports Ruby 2.0.0 and greater.
|
|
15
15
|
- [Registration](#registration)
|
16
16
|
- [Installation](#installation)
|
17
17
|
- [Usage](#usage)
|
18
|
+
- [Letters](#letters)
|
19
|
+
- [Accounts](#accounts)
|
20
|
+
- [Invoices](#invoices)
|
18
21
|
- [Examples](#examples)
|
19
22
|
|
20
23
|
## Getting Started
|
@@ -56,6 +59,8 @@ For optional parameters and other details, refer to the docs [here](https://docs
|
|
56
59
|
seeuletter = Seeuletter::Client.new(api_key: "your-api-key")
|
57
60
|
```
|
58
61
|
|
62
|
+
### Letters
|
63
|
+
|
59
64
|
#### Create a new letter
|
60
65
|
|
61
66
|
```ruby
|
@@ -138,6 +143,64 @@ seeuletter = Seeuletter::Client.new(api_key: 'test_12345678901234567890')
|
|
138
143
|
puts seeuletter.letter_price.get(color: 'bw', postage_type: 'prioritaire', postage_speed: 'D1', page_count: 1)
|
139
144
|
```
|
140
145
|
|
146
|
+
### Accounts
|
147
|
+
|
148
|
+
#### Create a new account for the company
|
149
|
+
|
150
|
+
```ruby
|
151
|
+
require 'seeuletter'
|
152
|
+
|
153
|
+
# initialize Seeuletter object
|
154
|
+
seeuletter = Seeuletter::Client.new(api_key: 'test_12345678901234567890')
|
155
|
+
|
156
|
+
puts seeuletter.accounts.create(
|
157
|
+
email: "msb.partner@example.com",
|
158
|
+
name: "Erlich Bachman",
|
159
|
+
phone: "+33104050607",
|
160
|
+
company_name: "MSB Partner from Ruby Wrapper",
|
161
|
+
address_line1: '30 rue de rivoli',
|
162
|
+
address_line2: '',
|
163
|
+
address_city: 'Paris',
|
164
|
+
address_country: 'France',
|
165
|
+
address_postalcode: '75004'
|
166
|
+
)
|
167
|
+
```
|
168
|
+
|
169
|
+
### Update the account company email
|
170
|
+
|
171
|
+
```ruby
|
172
|
+
require 'seeuletter'
|
173
|
+
|
174
|
+
# initialize Seeuletter object
|
175
|
+
seeuletter = Seeuletter::Client.new(api_key: 'test_12345678901234567890')
|
176
|
+
|
177
|
+
seeuletter.accounts.updateEmail('ACCOUNT_COMPANY_ID', "msb.partner.new@example.com")
|
178
|
+
```
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
### Invoices
|
183
|
+
|
184
|
+
#### List all invoices for a company
|
185
|
+
|
186
|
+
```ruby
|
187
|
+
require 'seeuletter'
|
188
|
+
|
189
|
+
seeuletter = Seeuletter::Client.new(api_key: 'test_12345678901234567890')
|
190
|
+
|
191
|
+
puts seeuletter.invoices.list()
|
192
|
+
```
|
193
|
+
|
194
|
+
#### Get a specific invoice
|
195
|
+
|
196
|
+
```ruby
|
197
|
+
require 'seeuletter'
|
198
|
+
|
199
|
+
seeuletter = Seeuletter::Client.new(api_key: 'test_12345678901234567890')
|
200
|
+
|
201
|
+
puts seeuletter.invoices.find('INVOICE_ID')
|
202
|
+
```
|
203
|
+
|
141
204
|
#### Caution: Pass zero-prefixed postal codes as strings
|
142
205
|
|
143
206
|
When using postal codes with zero-prefixes, always quote them. For example when specifying `02125`, pass it as a string `"02125"`, instead of an integer.
|
data/examples/README.md
CHANGED
@@ -0,0 +1,27 @@
|
|
1
|
+
$:.unshift File.expand_path("../lib", File.dirname(__FILE__))
|
2
|
+
require 'seeuletter'
|
3
|
+
|
4
|
+
# initialize Seeuletter object
|
5
|
+
seeuletter = Seeuletter::Client.new(api_key: '<PUT_YOU_API_KEY_HERE>')
|
6
|
+
|
7
|
+
begin
|
8
|
+
# create a new company account
|
9
|
+
create_response = seeuletter.accounts.create(
|
10
|
+
email: "msb.partner@example.com",
|
11
|
+
name: "Erlich Bachman",
|
12
|
+
phone: "+33104050607",
|
13
|
+
company_name: "MSB Partner from Ruby Wrapper",
|
14
|
+
address_line1: '30 rue de rivoli',
|
15
|
+
address_line2: '',
|
16
|
+
address_city: 'Paris',
|
17
|
+
address_country: 'France',
|
18
|
+
address_postalcode: '75004'
|
19
|
+
)
|
20
|
+
puts "The Seeuletter API Account responded : #{create_response}"
|
21
|
+
|
22
|
+
# update email of a company account
|
23
|
+
seeuletter.accounts.updateEmail(create_response['company']['_id'], "msb.partner.new@example.com")
|
24
|
+
|
25
|
+
rescue Seeuletter::SeeuletterError => ex
|
26
|
+
puts "Error from API : #{ex}"
|
27
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
$:.unshift File.expand_path("../lib", File.dirname(__FILE__))
|
2
|
+
require 'seeuletter'
|
3
|
+
|
4
|
+
# initialize Seeuletter object
|
5
|
+
seeuletter = Seeuletter::Client.new(api_key: '<PUT_YOU_API_KEY_HERE>')
|
6
|
+
|
7
|
+
begin
|
8
|
+
# get list of invoices
|
9
|
+
list_response = seeuletter.invoices.list(
|
10
|
+
status: "paid",
|
11
|
+
date_start: "2020-01-01"
|
12
|
+
)
|
13
|
+
puts "The Seeuletter API Invoices responded : #{list_response}"
|
14
|
+
|
15
|
+
# get single invoice by API
|
16
|
+
find_response = seeuletter.invoices.find(list_response['invoices'][0]['_id'])
|
17
|
+
puts "The Seeuletter API Invoice responded : #{find_response}"
|
18
|
+
|
19
|
+
rescue Seeuletter::SeeuletterError => ex
|
20
|
+
puts "Error from API : #{ex}"
|
21
|
+
end
|
data/lib/seeuletter/client.rb
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
require "seeuletter/resources/letter"
|
2
2
|
require 'seeuletter/resources/letter_price'
|
3
3
|
require "seeuletter/resources/user"
|
4
|
+
require "seeuletter/resources/account"
|
5
|
+
require "seeuletter/resources/invoice"
|
4
6
|
|
5
7
|
module Seeuletter
|
6
8
|
class Client
|
@@ -26,5 +28,13 @@ module Seeuletter
|
|
26
28
|
def users
|
27
29
|
Seeuletter::Resources::User.new(config)
|
28
30
|
end
|
31
|
+
|
32
|
+
def accounts
|
33
|
+
Seeuletter::Resources::Account.new(config)
|
34
|
+
end
|
35
|
+
|
36
|
+
def invoices
|
37
|
+
Seeuletter::Resources::Invoice.new(config)
|
38
|
+
end
|
29
39
|
end
|
30
40
|
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require "seeuletter/resources/resource_base"
|
2
|
+
|
3
|
+
module Seeuletter
|
4
|
+
module Resources
|
5
|
+
class Account < Seeuletter::Resources::ResourceBase
|
6
|
+
|
7
|
+
def initialize(config)
|
8
|
+
super(config)
|
9
|
+
@endpoint = "accounts"
|
10
|
+
end
|
11
|
+
|
12
|
+
def updateEmail(resource_id, email, headers={})
|
13
|
+
submit :put, resource_url(resource_id), {"email" => email}, headers
|
14
|
+
end
|
15
|
+
|
16
|
+
def list(options={})
|
17
|
+
raise SeeuletterError.new("Invalid REST operation : GET /accounts", "404", nil)
|
18
|
+
end
|
19
|
+
|
20
|
+
def find(resource_id)
|
21
|
+
raise SeeuletterError.new("Invalid REST operation : GET /accounts/:account_id", "404", nil)
|
22
|
+
end
|
23
|
+
|
24
|
+
def destroy(resource_id)
|
25
|
+
raise SeeuletterError.new("Invalid REST operation : DELETE /accounts/:account_id", "404", nil)
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require "seeuletter/resources/resource_base"
|
2
|
+
|
3
|
+
module Seeuletter
|
4
|
+
module Resources
|
5
|
+
class Invoice < Seeuletter::Resources::ResourceBase
|
6
|
+
|
7
|
+
def initialize(config)
|
8
|
+
super(config)
|
9
|
+
@endpoint = "invoices"
|
10
|
+
end
|
11
|
+
|
12
|
+
def create(options={}, headers={})
|
13
|
+
raise SeeuletterError.new("Invalid REST operation : POST /invoices", "404", nil)
|
14
|
+
end
|
15
|
+
|
16
|
+
def destroy(resource_id)
|
17
|
+
raise SeeuletterError.new("Invalid REST operation : DELETE /accounts/:invoice_id", "404", nil)
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/seeuletter/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: seeuletter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Seeuletter
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|
@@ -71,6 +71,8 @@ files:
|
|
71
71
|
- README.md
|
72
72
|
- Rakefile
|
73
73
|
- examples/README.md
|
74
|
+
- examples/accounts.rb
|
75
|
+
- examples/invoices.rb
|
74
76
|
- examples/letter_price.rb
|
75
77
|
- examples/letters.rb
|
76
78
|
- examples/letters_electronic.rb
|
@@ -79,6 +81,8 @@ files:
|
|
79
81
|
- lib/seeuletter/client.rb
|
80
82
|
- lib/seeuletter/errors/invalid_request_error.rb
|
81
83
|
- lib/seeuletter/errors/seeuletter_error.rb
|
84
|
+
- lib/seeuletter/resources/account.rb
|
85
|
+
- lib/seeuletter/resources/invoice.rb
|
82
86
|
- lib/seeuletter/resources/letter.rb
|
83
87
|
- lib/seeuletter/resources/letter_price.rb
|
84
88
|
- lib/seeuletter/resources/resource_base.rb
|