enveloop 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1af89bdd26c1380d6f05ebf9b9ab9e86c29617eeb689760c88dd81f7009397cd
4
- data.tar.gz: 51c5c8a2ffc6e557e469b14a5dac3b1b04628c484525189598a893c55de7630f
3
+ metadata.gz: 596fdbbb2ebc6cc7b533c13225b7d3b9230dcf272a075348c845e8c57326dc33
4
+ data.tar.gz: 950931ce5bbc9c41b4ed9cea7551b33af8ddef4b4d13886163a5cb2f99208520
5
5
  SHA512:
6
- metadata.gz: 3048366a973c5115ac2e9c5dafae487441c62d4f43d6106dc9886f3dbca336d41870195f25d15bdb5f4fc3811bd47ad49d2fa40face26866921f01e6b0b830ca
7
- data.tar.gz: de31f9fb4c68cab0c0773e4e1a192a1fc9ff64904254f4e5468c35addbd1f94d419f44792448bd1781831e385f17ad1c9832e6bc5ed5216b26f85c95964498a9
6
+ metadata.gz: 8168eb794ad27972124baf57e0f0d68041a01f640b2a3477aef89aa05aa4ee3838aab33ddd99a37f29c03679476b30fcf42fa2d992ba470acf6ecc24deadb720
7
+ data.tar.gz: b84e89cec6e6dcc54411a6bbf090274b6e1fbd7471a3a820aaa4be496946a41877144b92e7026f7655baac42019d11d00dc6b877b2993b994bbd8a359378e88b
data/CHANGELOG.md CHANGED
@@ -7,4 +7,8 @@
7
7
 
8
8
  > ## Version 0.1.1
9
9
 
10
- * Add Response class
10
+ * Add Response class
11
+
12
+ > ## Version 0.1.2
13
+
14
+ * add `template_info` to fetch the template body and see waht variables are defined on a template
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- enveloop (0.1.1)
4
+ enveloop (0.1.2)
5
5
  faraday
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -20,6 +20,8 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
 
23
+ SEnd a message:
24
+
23
25
  ```ruby
24
26
  require 'enveloop'
25
27
 
@@ -36,6 +38,16 @@ enveloop.send_message(
36
38
  )
37
39
  ```
38
40
 
41
+ Get information about a template (variables and body html):
42
+
43
+ ```ruby
44
+ require 'enveloop'
45
+
46
+ enveloop = Enveloop::Client.new(api_key: ENV['ENVELOOP_API_TOKEN'])
47
+
48
+ enveloop.template_info(template: 'welcome-email')
49
+ ```
50
+
39
51
  ## Development
40
52
 
41
53
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -44,7 +56,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
44
56
 
45
57
  ## Contributing
46
58
 
47
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/enveloop. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/enveloop/blob/master/CODE_OF_CONDUCT.md).
59
+ Bug reports and pull requests are welcome on GitHub at https://github.com/enveloophq/enveloop-ruby. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/enveloophq/enveloop-ruby/blob/master/CODE_OF_CONDUCT.md).
48
60
 
49
61
 
50
62
  ## License
@@ -53,4 +65,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
53
65
 
54
66
  ## Code of Conduct
55
67
 
56
- Everyone interacting in the Enveloop project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/enveloop/blob/master/CODE_OF_CONDUCT.md).
68
+ Everyone interacting in the Enveloop project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/enveloophq/enveloop-ruby/blob/master/CODE_OF_CONDUCT.md).
@@ -25,7 +25,21 @@ module Enveloop
25
25
  req.body = data.to_json
26
26
  end
27
27
 
28
- return Response.new(status: response.status, body: response.body)
28
+ return MessageResponse.new(status: response.status, body: response.body)
29
+ end
30
+
31
+ def template_info(template:)
32
+ conn = Faraday.new(
33
+ url: @endpoint,
34
+ headers: {
35
+ "Content-Type" => "application/json",
36
+ "Authorization" => "token #{@api_key}"
37
+ }
38
+ )
39
+
40
+ response = conn.get("/templates/#{template}")
41
+
42
+ return TemplateResponse.new(status: response.status, body: response.body)
29
43
  end
30
44
  end
31
45
  end
@@ -1,5 +1,5 @@
1
1
  module Enveloop
2
- class Response
2
+ class MessageResponse
3
3
  attr_reader :status, :message, :error
4
4
 
5
5
  def initialize(status: 200, body: nil)
@@ -7,12 +7,9 @@ module Enveloop
7
7
 
8
8
  if status == 200
9
9
  @message = JSON.parse(body)
10
- @error = nil
11
10
  elsif status == 500
12
- @message = nil
13
11
  @error = JSON.parse(body)['error']
14
12
  else
15
- @message = nil
16
13
  @error = 'Unknown error'
17
14
  end
18
15
  end
@@ -0,0 +1,21 @@
1
+ module Enveloop
2
+ class TemplateResponse
3
+ attr_reader :status, :template, :error
4
+
5
+ def initialize(status: 200, body: nil)
6
+ @status = status
7
+
8
+ if status == 200
9
+ @template = JSON.parse(body)
10
+ elsif status == 500
11
+ @error = JSON.parse(body)['error']
12
+ else
13
+ @error = 'Unknown error'
14
+ end
15
+ end
16
+
17
+ def success?
18
+ @status == 200
19
+ end
20
+ end
21
+ end
@@ -1,3 +1,3 @@
1
1
  module Enveloop
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
data/lib/enveloop.rb CHANGED
@@ -3,7 +3,8 @@ require "json"
3
3
 
4
4
  require "enveloop/version"
5
5
  require 'enveloop/client'
6
- require 'enveloop/response'
6
+ require 'enveloop/message_response'
7
+ require 'enveloop/template_response'
7
8
 
8
9
  module Enveloop
9
10
  class Error < StandardError; end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enveloop
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Wyrosdick
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-10-06 00:00:00.000000000 Z
11
+ date: 2022-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -45,7 +45,8 @@ files:
45
45
  - enveloop.gemspec
46
46
  - lib/enveloop.rb
47
47
  - lib/enveloop/client.rb
48
- - lib/enveloop/response.rb
48
+ - lib/enveloop/message_response.rb
49
+ - lib/enveloop/template_response.rb
49
50
  - lib/enveloop/version.rb
50
51
  homepage: https://github.com/enveloophq/ruby_enveloop
51
52
  licenses:
@@ -69,7 +70,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
69
70
  - !ruby/object:Gem::Version
70
71
  version: '0'
71
72
  requirements: []
72
- rubygems_version: 3.1.4
73
+ rubygems_version: 3.1.2
73
74
  signing_key:
74
75
  specification_version: 4
75
76
  summary: Envelope API wrapper