iterable-api-client 0.3.2 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.md +77 -4
- data/lib/iterable/catalog_field_mappings.rb +1 -0
- data/lib/iterable/catalogs.rb +1 -0
- data/lib/iterable/events.rb +13 -0
- data/lib/iterable/experiments.rb +1 -0
- data/lib/iterable/export.rb +1 -1
- data/lib/iterable/in_app.rb +36 -0
- data/lib/iterable/metadata_table.rb +1 -0
- data/lib/iterable/push.rb +46 -0
- data/lib/iterable/request.rb +3 -3
- data/lib/iterable.rb +3 -4
- data.tar.gz.sig +0 -0
- metadata +64 -48
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 003ee817aaa95dc181bf7b36909387689f70ffa1ed755878eb7132a0166b0130
|
4
|
+
data.tar.gz: 3ab136966f544fc25f2431d39a99ac84e94cf5f88c1d496f1dd7b4bd2e45cff2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d3696c057360e661ee4f632182323a9d99a8af4110be64fce1d1dfd58980c9a13d65dc1b0767df53f17502925526949e1fc17aadc980a4b654479a34a65009bc
|
7
|
+
data.tar.gz: 874f5d7201a038ddc54437e1d0920b3c0bf77f5d5333c5ccdcd5a756e20154d0942b0920c800669e2adb8ef0d3f65a62b66644a936ed25800bf59d26bd571a93
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/README.md
CHANGED
@@ -124,6 +124,7 @@ reponse.uri
|
|
124
124
|
- [Upsert](#email-templates-upsert)
|
125
125
|
- [Events](#events)
|
126
126
|
- [For Email](#events-for-email)
|
127
|
+
- [Bulk Track](#events-track-bulk)
|
127
128
|
- [Track](#events-track)
|
128
129
|
- [Track Push Open](#events-track-push-open)
|
129
130
|
- [Experiments](#experiments)
|
@@ -133,6 +134,8 @@ reponse.uri
|
|
133
134
|
- [CSV](#export-csv)
|
134
135
|
- [In App](#in-app)
|
135
136
|
- [Messages](#in-app-messages)
|
137
|
+
- [Target](#in-app-target)
|
138
|
+
- [Cancel](#in-app-cancel)
|
136
139
|
- [Lists](#lists)
|
137
140
|
- [All](#lists-all)
|
138
141
|
- [Create](#lists-create)
|
@@ -149,6 +152,9 @@ reponse.uri
|
|
149
152
|
- [Get Key](#metadata-get-key)
|
150
153
|
- [Remove Key](#metadata-remove-key)
|
151
154
|
- [Add Key](#metadata-add-key)
|
155
|
+
- [Push](#push)
|
156
|
+
- [Target](#push-target)
|
157
|
+
- [Cancel](#push-cancel)
|
152
158
|
- [Push Templates](#push-templates)
|
153
159
|
- [Get](#push-templates-get)
|
154
160
|
- [Update](#push-templates-update)
|
@@ -300,7 +306,8 @@ Endpoint: `GET /catalogs/{catalogName}/fieldMappings`
|
|
300
306
|
```ruby
|
301
307
|
catalog = 'my-catalog'
|
302
308
|
catalog_field_mappings = Iterable::CatalogFieldMappings.new(catalog)
|
303
|
-
response = catalog_field_mappings.
|
309
|
+
response = catalog_field_mappings.get
|
310
|
+
response.body['params']['definedMappings']
|
304
311
|
```
|
305
312
|
|
306
313
|
#### Catalog Field Mappings Update
|
@@ -557,6 +564,19 @@ attrs = { campaignId: 42, dataFields: {} }
|
|
557
564
|
response = events.track 'event-name', 'user@example.com', attrs
|
558
565
|
```
|
559
566
|
|
567
|
+
#### Events Track Bulk
|
568
|
+
|
569
|
+
Endpoint: `POST /events/trackBulk`
|
570
|
+
|
571
|
+
```ruby
|
572
|
+
events = Iterable::Events.new
|
573
|
+
# Array of events to track
|
574
|
+
events_attrs = [
|
575
|
+
{ email: 'user@example.com', eventName: 'event-name', campaignId: 42, dataFields: {} }
|
576
|
+
]
|
577
|
+
response = iterable_events.track_bulk events_attrs
|
578
|
+
```
|
579
|
+
|
560
580
|
#### Events Track Push Open
|
561
581
|
|
562
582
|
Endpoint: `GET /events/{email}`
|
@@ -639,7 +659,34 @@ response = in_app.messages_for_user_id 42, count: 2
|
|
639
659
|
# Pass in query parameters
|
640
660
|
email = 'user@example.com'
|
641
661
|
attrs = { 'platform' => 'iOS' }
|
642
|
-
response = in_app.messages_for_email
|
662
|
+
response = in_app.messages_for_email email, attrs
|
663
|
+
```
|
664
|
+
|
665
|
+
#### In App Target
|
666
|
+
|
667
|
+
Endpoint: `POST /inApp/target`
|
668
|
+
|
669
|
+
```ruby
|
670
|
+
in_app = Iterable::InApp.new
|
671
|
+
|
672
|
+
# Needs campaign ID and an optional email
|
673
|
+
email = 'user@example.com'
|
674
|
+
attrs = { 'campaignId' => '123456asdf' }
|
675
|
+
response = in_app.target attrs: attrs, email: email
|
676
|
+
```
|
677
|
+
|
678
|
+
#### In App Cancel
|
679
|
+
|
680
|
+
Endpoint: `POST /push/cancel`
|
681
|
+
|
682
|
+
```ruby
|
683
|
+
in_app = Iterable::InApp.new
|
684
|
+
|
685
|
+
# Needs campaign ID and an optional email and optional attrs for request
|
686
|
+
email = 'user@example.com'
|
687
|
+
campaign_id = '12345asdf'
|
688
|
+
attrs = {}
|
689
|
+
response = in_app.target campaign_id: campaign_id, attrs: attrs, email: email
|
643
690
|
```
|
644
691
|
|
645
692
|
### Lists
|
@@ -776,6 +823,32 @@ value = { foo: 'bar', data: 'stuffs' }
|
|
776
823
|
response = metadata_table.add 'metadata-key', value
|
777
824
|
```
|
778
825
|
|
826
|
+
### Push
|
827
|
+
|
828
|
+
#### Push Target
|
829
|
+
|
830
|
+
Endpoint: `POST /push/target`
|
831
|
+
|
832
|
+
```ruby
|
833
|
+
push = Iterable::Push.new
|
834
|
+
campaign_id = '1234asdf'
|
835
|
+
email = 'user@example.com' # optional
|
836
|
+
attrs = {} # optional extra params for the request
|
837
|
+
response = push.target campaign_id: campaign_id, email: email, attrs: attrs
|
838
|
+
```
|
839
|
+
|
840
|
+
#### Push Cancel
|
841
|
+
|
842
|
+
Endpoint: `POST /push/cancel`
|
843
|
+
|
844
|
+
```ruby
|
845
|
+
push = Iterable::Push.new
|
846
|
+
campaign_id = '1234asdf'
|
847
|
+
email = 'user@example.com' # optional
|
848
|
+
attrs = {} # optional extra params for the request
|
849
|
+
response = push.cancel email: email, campaign_id: campaign_id, attrs: attrs
|
850
|
+
```
|
851
|
+
|
779
852
|
### Push Templates
|
780
853
|
|
781
854
|
#### Push Templates Get
|
@@ -854,10 +927,10 @@ Endpoint: `POST /users/bulkUpdate`
|
|
854
927
|
users = Iterable::Users.new
|
855
928
|
# Array of users to update by email with additional
|
856
929
|
# fields if needed
|
857
|
-
|
930
|
+
users_attrs = [
|
858
931
|
{ email: 'user@example.com', userID: 'custom-id' }
|
859
932
|
]
|
860
|
-
response = users.bulk_update
|
933
|
+
response = users.bulk_update users_attrs
|
861
934
|
```
|
862
935
|
|
863
936
|
#### Users Update Subscriptions
|
data/lib/iterable/catalogs.rb
CHANGED
data/lib/iterable/events.rb
CHANGED
@@ -39,6 +39,19 @@ module Iterable
|
|
39
39
|
Iterable.request(conf, '/events/track').post(attrs)
|
40
40
|
end
|
41
41
|
|
42
|
+
##
|
43
|
+
#
|
44
|
+
# Bulk Track events
|
45
|
+
#
|
46
|
+
# @param events [Array[Hash]] Array of hashes of event details
|
47
|
+
#
|
48
|
+
# @return [Iterable::Response] A response object
|
49
|
+
#
|
50
|
+
# @note Event fields can be eventName [String], email [String], dataFields [Hash], or userId [String]
|
51
|
+
def track_bulk(events = [])
|
52
|
+
Iterable.request(conf, '/events/trackBulk').post(events: events)
|
53
|
+
end
|
54
|
+
|
42
55
|
##
|
43
56
|
#
|
44
57
|
# Track an event
|
data/lib/iterable/experiments.rb
CHANGED
data/lib/iterable/export.rb
CHANGED
@@ -57,7 +57,7 @@ module Iterable
|
|
57
57
|
# @param conf [Iterable::Config] A config to optionally pass for requests
|
58
58
|
#
|
59
59
|
# @return [Iterable::Export]
|
60
|
-
def initialize(data_type, only_fields = [], omit_fields = [], campaign_id = nil, conf = nil)
|
60
|
+
def initialize(data_type, only_fields = [], omit_fields = [], campaign_id = nil, conf = nil) # rubocop:disable Metrics/ParameterLists
|
61
61
|
@data_type = data_type
|
62
62
|
@only_fields = only_fields
|
63
63
|
@omit_fields = omit_fields
|
data/lib/iterable/in_app.rb
CHANGED
@@ -41,6 +41,42 @@ module Iterable
|
|
41
41
|
messages(attrs)
|
42
42
|
end
|
43
43
|
|
44
|
+
##
|
45
|
+
#
|
46
|
+
# Send an In-App notification to a specific user. User Email or ID along
|
47
|
+
# with campaign ID must be provided
|
48
|
+
#
|
49
|
+
# @param email [String] (optional) User email used to identify user
|
50
|
+
# @param campaign_id [Integer] Campaign ID
|
51
|
+
# @param attrs [Hash] Additional data to update or add
|
52
|
+
#
|
53
|
+
# @return [Iterable::Response] A response object
|
54
|
+
#
|
55
|
+
def target(campaign_id:, attrs: {}, email: nil)
|
56
|
+
attrs['recipientEmail'] = email if email
|
57
|
+
attrs['campaignId'] = campaign_id
|
58
|
+
Iterable.request(conf, '/inApp/target').post(attrs)
|
59
|
+
end
|
60
|
+
|
61
|
+
##
|
62
|
+
#
|
63
|
+
# Cancel an In App notification sent to a specific user
|
64
|
+
# Must include either an email address AND campaignId, or
|
65
|
+
# just a scheduledMessageId provided in the attrs
|
66
|
+
#
|
67
|
+
# @param email [String] User email to cancel push
|
68
|
+
# @param campaignId [Integer] campaignID used to cancel push
|
69
|
+
# @param attrs [Hash] Additional data to update or add
|
70
|
+
#
|
71
|
+
# @return [Iterable::Response] A response object
|
72
|
+
#
|
73
|
+
# @note An email or UserId is required
|
74
|
+
def cancel(campaign_id: nil, attrs: {}, email: nil)
|
75
|
+
attrs['email'] = email if email
|
76
|
+
attrs['campaignId'] = campaign_id if campaign_id
|
77
|
+
Iterable.request(conf, '/push/cancel').post(attrs)
|
78
|
+
end
|
79
|
+
|
44
80
|
private def messages(**attrs)
|
45
81
|
Iterable.request(conf, '/inApp/getMessages', attrs).get
|
46
82
|
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Iterable
|
2
|
+
##
|
3
|
+
#
|
4
|
+
# Interact with /push API endpoints
|
5
|
+
#
|
6
|
+
# @example Creating push endpoint object
|
7
|
+
# # With default config
|
8
|
+
# templates = Iterable::Push.new
|
9
|
+
# templates.target campaign_id: '12345'
|
10
|
+
#
|
11
|
+
class Push < ApiResource
|
12
|
+
##
|
13
|
+
#
|
14
|
+
# Send a push notification to a specific user
|
15
|
+
#
|
16
|
+
# @param email [String] (optional) User email used to identify user
|
17
|
+
# @param campaign_id [Integer] Campaign ID
|
18
|
+
# @param attrs [Hash] Additional data to update or add
|
19
|
+
#
|
20
|
+
# @return [Iterable::Response] A response object
|
21
|
+
def target(campaign_id:, email: nil, attrs: {})
|
22
|
+
attrs['recipientEmail'] = email if email
|
23
|
+
attrs['campaignId'] = campaign_id
|
24
|
+
Iterable.request(conf, '/push/target').post(attrs)
|
25
|
+
end
|
26
|
+
|
27
|
+
##
|
28
|
+
#
|
29
|
+
# Cancel a push notification to a specific user
|
30
|
+
# Must include either an email address AND campaignId, or
|
31
|
+
# just a scheduledMessageId provided in the attrs
|
32
|
+
#
|
33
|
+
# @param email [String] User email to cancel push
|
34
|
+
# @param campaignId [Integer] campaignID used to cancel push
|
35
|
+
# @param attrs [Hash] Additional data to update or add
|
36
|
+
#
|
37
|
+
# @return [Iterable::Response] A response object
|
38
|
+
#
|
39
|
+
# @note An email or UserId is required
|
40
|
+
def cancel(email: nil, campaign_id: nil, attrs: {})
|
41
|
+
attrs['email'] = email if email
|
42
|
+
attrs['campaignId'] = campaign_id if campaign_id
|
43
|
+
Iterable.request(conf, '/push/cancel').post(attrs)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
data/lib/iterable/request.rb
CHANGED
@@ -49,7 +49,8 @@ module Iterable
|
|
49
49
|
end
|
50
50
|
|
51
51
|
private def connection(verb, body = {}, headers = {})
|
52
|
-
conn_headers = DEFAULT_HEADERS.merge(headers)
|
52
|
+
conn_headers = DEFAULT_HEADERS.dup.merge(headers)
|
53
|
+
conn_headers['Api-Key'] = @config.token if @config.token
|
53
54
|
req = Net::HTTP.const_get(verb.to_s.capitalize, false).new(@uri, conn_headers)
|
54
55
|
req.body = JSON.dump(body)
|
55
56
|
req
|
@@ -65,8 +66,7 @@ module Iterable
|
|
65
66
|
private def build_uri(path, params = {})
|
66
67
|
uri = @config.uri
|
67
68
|
uri.path += path
|
68
|
-
|
69
|
-
uri.query = URI.encode_www_form(params)
|
69
|
+
uri.query = URI.encode_www_form(params) unless params.empty?
|
70
70
|
uri
|
71
71
|
end
|
72
72
|
|
data/lib/iterable.rb
CHANGED
@@ -22,6 +22,7 @@ files = %w[
|
|
22
22
|
templates
|
23
23
|
email_templates
|
24
24
|
push_templates
|
25
|
+
push
|
25
26
|
users
|
26
27
|
workflows
|
27
28
|
metadata
|
@@ -52,10 +53,8 @@ module Iterable
|
|
52
53
|
# Iterable.configure do |conf|
|
53
54
|
# conf.token = 'secret-token'
|
54
55
|
# end
|
55
|
-
module_function def configure
|
56
|
-
config.tap
|
57
|
-
yield conf
|
58
|
-
end
|
56
|
+
module_function def configure(&block)
|
57
|
+
config.tap(&block)
|
59
58
|
end
|
60
59
|
|
61
60
|
##
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: iterable-api-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chavez
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain:
|
11
11
|
- |
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
skirV2p91csPqqACuQCX2oK9r29QZtt95aAnVdsdBMA+evI2nVknO0OhYDqNA0wR
|
36
36
|
SkUCdTSDgV9CsbN/vy6DeR0eX1kP6OrntZJjKnrncbkKZnrJ5fjzKtUyj3I=
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date:
|
38
|
+
date: 2023-01-18 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: multi_json
|
@@ -52,173 +52,187 @@ dependencies:
|
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: 1.12.0
|
54
54
|
- !ruby/object:Gem::Dependency
|
55
|
-
name:
|
55
|
+
name: dotenv
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
58
|
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version:
|
60
|
+
version: 2.7.1
|
61
61
|
type: :development
|
62
62
|
prerelease: false
|
63
63
|
version_requirements: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version:
|
67
|
+
version: 2.7.1
|
68
68
|
- !ruby/object:Gem::Dependency
|
69
|
-
name:
|
69
|
+
name: gemcutter
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version:
|
74
|
+
version: 0.7.1
|
75
75
|
type: :development
|
76
76
|
prerelease: false
|
77
77
|
version_requirements: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version:
|
81
|
+
version: 0.7.1
|
82
82
|
- !ruby/object:Gem::Dependency
|
83
|
-
name:
|
83
|
+
name: pry
|
84
84
|
requirement: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
|
-
version: 0.
|
88
|
+
version: 0.14.1
|
89
89
|
type: :development
|
90
90
|
prerelease: false
|
91
91
|
version_requirements: !ruby/object:Gem::Requirement
|
92
92
|
requirements:
|
93
93
|
- - "~>"
|
94
94
|
- !ruby/object:Gem::Version
|
95
|
-
version: 0.
|
95
|
+
version: 0.14.1
|
96
96
|
- !ruby/object:Gem::Dependency
|
97
|
-
name:
|
97
|
+
name: pry-byebug
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
100
100
|
- - "~>"
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version:
|
102
|
+
version: 3.8.0
|
103
103
|
type: :development
|
104
104
|
prerelease: false
|
105
105
|
version_requirements: !ruby/object:Gem::Requirement
|
106
106
|
requirements:
|
107
107
|
- - "~>"
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
109
|
+
version: 3.8.0
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
|
-
name: pry
|
111
|
+
name: pry-doc
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
113
113
|
requirements:
|
114
114
|
- - "~>"
|
115
115
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
116
|
+
version: 1.3.0
|
117
117
|
type: :development
|
118
118
|
prerelease: false
|
119
119
|
version_requirements: !ruby/object:Gem::Requirement
|
120
120
|
requirements:
|
121
121
|
- - "~>"
|
122
122
|
- !ruby/object:Gem::Version
|
123
|
-
version:
|
123
|
+
version: 1.3.0
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
|
-
name:
|
125
|
+
name: rake
|
126
126
|
requirement: !ruby/object:Gem::Requirement
|
127
127
|
requirements:
|
128
128
|
- - "~>"
|
129
129
|
- !ruby/object:Gem::Version
|
130
|
-
version:
|
130
|
+
version: 13.0.0
|
131
131
|
type: :development
|
132
132
|
prerelease: false
|
133
133
|
version_requirements: !ruby/object:Gem::Requirement
|
134
134
|
requirements:
|
135
135
|
- - "~>"
|
136
136
|
- !ruby/object:Gem::Version
|
137
|
-
version:
|
137
|
+
version: 13.0.0
|
138
138
|
- !ruby/object:Gem::Dependency
|
139
|
-
name:
|
139
|
+
name: redcarpet
|
140
140
|
requirement: !ruby/object:Gem::Requirement
|
141
141
|
requirements:
|
142
142
|
- - "~>"
|
143
143
|
- !ruby/object:Gem::Version
|
144
|
-
version:
|
144
|
+
version: 3.5.0
|
145
145
|
type: :development
|
146
146
|
prerelease: false
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
148
148
|
requirements:
|
149
149
|
- - "~>"
|
150
150
|
- !ruby/object:Gem::Version
|
151
|
-
version:
|
151
|
+
version: 3.5.0
|
152
152
|
- !ruby/object:Gem::Dependency
|
153
|
-
name:
|
153
|
+
name: rspec
|
154
154
|
requirement: !ruby/object:Gem::Requirement
|
155
155
|
requirements:
|
156
156
|
- - "~>"
|
157
157
|
- !ruby/object:Gem::Version
|
158
|
-
version:
|
158
|
+
version: 3.11.0
|
159
159
|
type: :development
|
160
160
|
prerelease: false
|
161
161
|
version_requirements: !ruby/object:Gem::Requirement
|
162
162
|
requirements:
|
163
163
|
- - "~>"
|
164
164
|
- !ruby/object:Gem::Version
|
165
|
-
version:
|
165
|
+
version: 3.11.0
|
166
166
|
- !ruby/object:Gem::Dependency
|
167
|
-
name:
|
167
|
+
name: rubocop
|
168
168
|
requirement: !ruby/object:Gem::Requirement
|
169
169
|
requirements:
|
170
170
|
- - "~>"
|
171
171
|
- !ruby/object:Gem::Version
|
172
|
-
version:
|
172
|
+
version: 1.29.1
|
173
173
|
type: :development
|
174
174
|
prerelease: false
|
175
175
|
version_requirements: !ruby/object:Gem::Requirement
|
176
176
|
requirements:
|
177
177
|
- - "~>"
|
178
178
|
- !ruby/object:Gem::Version
|
179
|
-
version:
|
179
|
+
version: 1.29.1
|
180
180
|
- !ruby/object:Gem::Dependency
|
181
|
-
name:
|
181
|
+
name: rubocop-performance
|
182
182
|
requirement: !ruby/object:Gem::Requirement
|
183
183
|
requirements:
|
184
184
|
- - "~>"
|
185
185
|
- !ruby/object:Gem::Version
|
186
|
-
version:
|
186
|
+
version: 1.13.3
|
187
187
|
type: :development
|
188
188
|
prerelease: false
|
189
189
|
version_requirements: !ruby/object:Gem::Requirement
|
190
190
|
requirements:
|
191
191
|
- - "~>"
|
192
192
|
- !ruby/object:Gem::Version
|
193
|
-
version:
|
193
|
+
version: 1.13.3
|
194
194
|
- !ruby/object:Gem::Dependency
|
195
|
-
name: rubocop
|
195
|
+
name: rubocop-rspec
|
196
196
|
requirement: !ruby/object:Gem::Requirement
|
197
197
|
requirements:
|
198
198
|
- - "~>"
|
199
199
|
- !ruby/object:Gem::Version
|
200
|
-
version:
|
200
|
+
version: 2.11.0
|
201
201
|
type: :development
|
202
202
|
prerelease: false
|
203
203
|
version_requirements: !ruby/object:Gem::Requirement
|
204
204
|
requirements:
|
205
205
|
- - "~>"
|
206
206
|
- !ruby/object:Gem::Version
|
207
|
-
version:
|
207
|
+
version: 2.11.0
|
208
208
|
- !ruby/object:Gem::Dependency
|
209
209
|
name: simplecov
|
210
210
|
requirement: !ruby/object:Gem::Requirement
|
211
211
|
requirements:
|
212
212
|
- - "~>"
|
213
213
|
- !ruby/object:Gem::Version
|
214
|
-
version: 0.
|
214
|
+
version: 0.21.2
|
215
215
|
type: :development
|
216
216
|
prerelease: false
|
217
217
|
version_requirements: !ruby/object:Gem::Requirement
|
218
218
|
requirements:
|
219
219
|
- - "~>"
|
220
220
|
- !ruby/object:Gem::Version
|
221
|
-
version: 0.
|
221
|
+
version: 0.21.2
|
222
|
+
- !ruby/object:Gem::Dependency
|
223
|
+
name: simplecov-cobertura
|
224
|
+
requirement: !ruby/object:Gem::Requirement
|
225
|
+
requirements:
|
226
|
+
- - "~>"
|
227
|
+
- !ruby/object:Gem::Version
|
228
|
+
version: 2.1.0
|
229
|
+
type: :development
|
230
|
+
prerelease: false
|
231
|
+
version_requirements: !ruby/object:Gem::Requirement
|
232
|
+
requirements:
|
233
|
+
- - "~>"
|
234
|
+
- !ruby/object:Gem::Version
|
235
|
+
version: 2.1.0
|
222
236
|
- !ruby/object:Gem::Dependency
|
223
237
|
name: typhoeus
|
224
238
|
requirement: !ruby/object:Gem::Requirement
|
@@ -253,28 +267,28 @@ dependencies:
|
|
253
267
|
requirements:
|
254
268
|
- - "~>"
|
255
269
|
- !ruby/object:Gem::Version
|
256
|
-
version: 3.
|
270
|
+
version: 3.14.0
|
257
271
|
type: :development
|
258
272
|
prerelease: false
|
259
273
|
version_requirements: !ruby/object:Gem::Requirement
|
260
274
|
requirements:
|
261
275
|
- - "~>"
|
262
276
|
- !ruby/object:Gem::Version
|
263
|
-
version: 3.
|
277
|
+
version: 3.14.0
|
264
278
|
- !ruby/object:Gem::Dependency
|
265
279
|
name: yard
|
266
280
|
requirement: !ruby/object:Gem::Requirement
|
267
281
|
requirements:
|
268
282
|
- - "~>"
|
269
283
|
- !ruby/object:Gem::Version
|
270
|
-
version: 0.9.
|
284
|
+
version: 0.9.11
|
271
285
|
type: :development
|
272
286
|
prerelease: false
|
273
287
|
version_requirements: !ruby/object:Gem::Requirement
|
274
288
|
requirements:
|
275
289
|
- - "~>"
|
276
290
|
- !ruby/object:Gem::Version
|
277
|
-
version: 0.9.
|
291
|
+
version: 0.9.11
|
278
292
|
description: Ruby gem for the Iterable REST API
|
279
293
|
email: contact@el-chavez.me
|
280
294
|
executables: []
|
@@ -308,6 +322,7 @@ files:
|
|
308
322
|
- lib/iterable/message_types.rb
|
309
323
|
- lib/iterable/metadata.rb
|
310
324
|
- lib/iterable/metadata_table.rb
|
325
|
+
- lib/iterable/push.rb
|
311
326
|
- lib/iterable/push_templates.rb
|
312
327
|
- lib/iterable/request.rb
|
313
328
|
- lib/iterable/response.rb
|
@@ -315,11 +330,12 @@ files:
|
|
315
330
|
- lib/iterable/users.rb
|
316
331
|
- lib/iterable/workflows.rb
|
317
332
|
- lib/iterable_api_client.rb
|
318
|
-
homepage:
|
333
|
+
homepage: https://gitlab.com/mtchavez/iterable
|
319
334
|
licenses:
|
320
335
|
- MIT
|
321
|
-
metadata:
|
322
|
-
|
336
|
+
metadata:
|
337
|
+
rubygems_mfa_required: 'true'
|
338
|
+
post_install_message:
|
323
339
|
rdoc_options:
|
324
340
|
- "--charset=UTF-8"
|
325
341
|
- "--main=README.md"
|
@@ -329,15 +345,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
329
345
|
requirements:
|
330
346
|
- - ">="
|
331
347
|
- !ruby/object:Gem::Version
|
332
|
-
version: 2.
|
348
|
+
version: 2.6.0
|
333
349
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
334
350
|
requirements:
|
335
351
|
- - ">="
|
336
352
|
- !ruby/object:Gem::Version
|
337
353
|
version: '0'
|
338
354
|
requirements: []
|
339
|
-
rubygems_version: 3.
|
340
|
-
signing_key:
|
355
|
+
rubygems_version: 3.1.6
|
356
|
+
signing_key:
|
341
357
|
specification_version: 4
|
342
358
|
summary: Iterable REST API Client
|
343
359
|
test_files: []
|
metadata.gz.sig
CHANGED
Binary file
|