braze_ruby 0.3.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +14 -3
  3. data/Gemfile.lock +43 -39
  4. data/README.md +59 -0
  5. data/braze_ruby.gemspec +7 -7
  6. data/lib/braze_ruby/api.rb +11 -4
  7. data/lib/braze_ruby/endpoints.rb +4 -0
  8. data/lib/braze_ruby/endpoints/campaigns.rb +1 -1
  9. data/lib/braze_ruby/endpoints/canvas.rb +2 -2
  10. data/lib/braze_ruby/endpoints/create_user_aliases.rb +19 -0
  11. data/lib/braze_ruby/endpoints/delete_users.rb +2 -2
  12. data/lib/braze_ruby/endpoints/email_status.rb +1 -1
  13. data/lib/braze_ruby/endpoints/email_sync.rb +2 -2
  14. data/lib/braze_ruby/endpoints/identify_users.rb +19 -0
  15. data/lib/braze_ruby/endpoints/remove_external_ids.rb +19 -0
  16. data/lib/braze_ruby/endpoints/rename_external_ids.rb +19 -0
  17. data/lib/braze_ruby/endpoints/schedule_messages.rb +1 -1
  18. data/lib/braze_ruby/endpoints/send_messages.rb +1 -1
  19. data/lib/braze_ruby/endpoints/subscription.rb +3 -3
  20. data/lib/braze_ruby/endpoints/track_users.rb +5 -5
  21. data/lib/braze_ruby/http.rb +18 -5
  22. data/lib/braze_ruby/rest.rb +4 -0
  23. data/lib/braze_ruby/rest/base.rb +4 -2
  24. data/lib/braze_ruby/rest/canvas_details.rb +3 -5
  25. data/lib/braze_ruby/rest/create_user_aliases.rb +13 -0
  26. data/lib/braze_ruby/rest/delete_users.rb +1 -2
  27. data/lib/braze_ruby/rest/email_hard_bounces.rb +3 -5
  28. data/lib/braze_ruby/rest/email_status.rb +3 -5
  29. data/lib/braze_ruby/rest/email_unsubscribes.rb +3 -5
  30. data/lib/braze_ruby/rest/export_users.rb +5 -7
  31. data/lib/braze_ruby/rest/identify_users.rb +13 -0
  32. data/lib/braze_ruby/rest/list_segments.rb +2 -4
  33. data/lib/braze_ruby/rest/remove_external_ids.rb +13 -0
  34. data/lib/braze_ruby/rest/rename_external_ids.rb +13 -0
  35. data/lib/braze_ruby/rest/schedule_messages.rb +3 -5
  36. data/lib/braze_ruby/rest/send_messages.rb +3 -5
  37. data/lib/braze_ruby/rest/subscription_status_get.rb +3 -5
  38. data/lib/braze_ruby/rest/subscription_status_set.rb +3 -5
  39. data/lib/braze_ruby/rest/subscription_user_status.rb +3 -5
  40. data/lib/braze_ruby/rest/track_users.rb +1 -2
  41. data/lib/braze_ruby/rest/trigger_campaign_send.rb +4 -8
  42. data/lib/braze_ruby/rest/trigger_canvas_send.rb +3 -5
  43. data/lib/braze_ruby/version.rb +1 -1
  44. data/spec/braze_ruby/endpoints/delete_users_spec.rb +1 -1
  45. data/spec/braze_ruby/endpoints/track_users_spec.rb +8 -8
  46. data/spec/braze_ruby/http_spec.rb +48 -0
  47. data/spec/braze_ruby/rest/create_user_aliases_spec.rb +23 -0
  48. data/spec/braze_ruby/rest/delete_users_spec.rb +3 -3
  49. data/spec/braze_ruby/rest/email_status_spec.rb +1 -2
  50. data/spec/braze_ruby/rest/export_users_spec.rb +3 -3
  51. data/spec/braze_ruby/rest/identify_users_spec.rb +23 -0
  52. data/spec/braze_ruby/rest/remove_external_ids_spec.rb +22 -0
  53. data/spec/braze_ruby/rest/rename_external_ids_spec.rb +22 -0
  54. data/spec/braze_ruby/rest/schedule_messages_spec.rb +1 -2
  55. data/spec/braze_ruby/rest/send_messages_spec.rb +8 -13
  56. data/spec/braze_ruby/rest/track_users_spec.rb +10 -9
  57. data/spec/fixtures/responses/campaigns/trigger_send/sends_an_email.yml +17 -15
  58. data/spec/fixtures/responses/canvas/details/returns_error_when_no_canvas.yml +16 -14
  59. data/spec/fixtures/responses/canvas/trigger_send/sends_a_canvas.yml +18 -16
  60. data/spec/fixtures/responses/create_user_aliases/unauthorized/responds_with_unauthorized.yml +67 -0
  61. data/spec/fixtures/responses/create_user_aliases/with_success/responds_with_created.yml +71 -0
  62. data/spec/fixtures/responses/create_user_aliases/with_success/responds_with_success_message.yml +71 -0
  63. data/spec/fixtures/responses/delete_users/unauthorized/responds_with_unauthorized.yml +20 -18
  64. data/spec/fixtures/responses/delete_users/with_success/responds_with_created.yml +25 -23
  65. data/spec/fixtures/responses/delete_users/with_success/responds_with_success_message.yml +25 -23
  66. data/spec/fixtures/responses/email_status/existing_email/responds_with_created.yml +22 -20
  67. data/spec/fixtures/responses/email_status/existing_email/responds_with_success_message.yml +22 -20
  68. data/spec/fixtures/responses/email_status/unknown_email/responds_with_bad_request.yml +22 -20
  69. data/spec/fixtures/responses/email_status/unknown_email/responds_with_success_message.yml +22 -20
  70. data/spec/fixtures/responses/email_sync/hard_bounces/responds_with_empty_array_when_no_hard_bounces.yml +18 -16
  71. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_empty_array_when_no_unsubscribes.yml +18 -16
  72. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_unsubscribed_emails.yml +21 -20
  73. data/spec/fixtures/responses/export_users/by_ids/with_success/responds_with_created.yml +25 -22
  74. data/spec/fixtures/responses/export_users/by_segment/with_success/responds_with_created.yml +24 -22
  75. data/spec/fixtures/responses/identify_users/unauthorized/responds_with_unauthorized.yml +68 -0
  76. data/spec/fixtures/responses/identify_users/with_success/responds_with_created.yml +71 -0
  77. data/spec/fixtures/responses/identify_users/with_success/responds_with_success_message.yml +71 -0
  78. data/spec/fixtures/responses/list_segments/with_success/responds_with_a_list_of_segments.yml +35 -35
  79. data/spec/fixtures/responses/list_segments/with_success/responds_with_success.yml +35 -35
  80. data/spec/fixtures/responses/remove_external_ids/unauthorized/responds_with_unauthorized.yml +67 -0
  81. data/spec/fixtures/responses/remove_external_ids/with_success/responds_with_created.yml +69 -0
  82. data/spec/fixtures/responses/remove_external_ids/with_success/responds_with_success_message.yml +69 -0
  83. data/spec/fixtures/responses/rename_external_ids/unauthorized/responds_with_unauthorized.yml +67 -0
  84. data/spec/fixtures/responses/rename_external_ids/with_success/responds_with_created.yml +69 -0
  85. data/spec/fixtures/responses/rename_external_ids/with_success/responds_with_success_message.yml +69 -0
  86. data/spec/fixtures/responses/schedule_messages/unauthorized/responds_with_unauthorize.yml +20 -19
  87. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_created.yml +24 -23
  88. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_success_message.yml +24 -23
  89. data/spec/fixtures/responses/send_messages/unauthorized/responds_with_unauthorized.yml +20 -18
  90. data/spec/fixtures/responses/send_messages/with_success/responds_with_created.yml +24 -22
  91. data/spec/fixtures/responses/send_messages/with_success/responds_with_success_message.yml +24 -22
  92. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscribing/subscribes_the_user.yml +16 -14
  93. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscription_group_does_not_exist/returns_an_error_status.yml +16 -14
  94. data/spec/fixtures/responses/subscription/subscription_status_set/when_unsubscribing/unsubscribes_the_user.yml +32 -28
  95. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_status_get/when_checking_subscribed_and_unsubscribed_user_status/returns_only_users_that_were_once_subscribed.yml +50 -44
  96. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_status_get/when_group_does_not_exist/returns_an_error.yml +48 -42
  97. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_user_status/returns_subscription_groups_and_status_for_every_group.yml +50 -46
  98. data/spec/fixtures/responses/track_users/unauthorized/responds_with_unauthorized.yml +23 -21
  99. data/spec/fixtures/responses/track_users/with_success/responds_with_created.yml +22 -20
  100. data/spec/fixtures/responses/track_users/with_success/responds_with_success_message.yml +22 -20
  101. data/spec/integrations/campaigns_spec.rb +4 -2
  102. data/spec/integrations/canvas_spec.rb +4 -2
  103. data/spec/integrations/create_user_aliases_spec.rb +32 -0
  104. data/spec/integrations/delete_users_spec.rb +1 -0
  105. data/spec/integrations/email_sync_spec.rb +2 -2
  106. data/spec/integrations/export_users_spec.rb +2 -2
  107. data/spec/integrations/identify_users_spec.rb +32 -0
  108. data/spec/integrations/list_segments_spec.rb +1 -1
  109. data/spec/integrations/remove_external_ids_spec.rb +33 -0
  110. data/spec/integrations/rename_external_ids_spec.rb +37 -0
  111. data/spec/integrations/schedule_messages_spec.rb +2 -1
  112. data/spec/integrations/send_messages_spec.rb +2 -1
  113. data/spec/integrations/subscription_spec.rb +7 -7
  114. data/spec/integrations/track_users_spec.rb +1 -0
  115. data/spec/spec_helper.rb +0 -8
  116. data/spec/support/integrations.rb +5 -1
  117. data/spec/support/vcr.rb +3 -1
  118. metadata +69 -19
@@ -5,14 +5,16 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/subscription/status/set"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","external_id":"test-gem-001","subscription_group_id":"0201b87a-ef6e-4410-9412-a298c4c1206d","subscription_state":"subscribed"}'
8
+ string: '{"external_id":"test-user-1","subscription_group_id":"ed06e19a-69b1-4f9b-a452-2db2c4e303a8","subscription_state":"subscribed"}'
9
9
  headers:
10
10
  Content-Type:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
14
  User-Agent:
15
- - Braze Ruby gem v0.2.2
15
+ - Braze Ruby gem v0.3.3
16
+ Authorization:
17
+ - Bearer <BRAZE_REST_API_KEY>
16
18
  Accept-Encoding:
17
19
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
20
  response:
@@ -20,6 +22,10 @@ http_interactions:
20
22
  code: 201
21
23
  message: Created
22
24
  headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '46'
23
29
  Cache-Control:
24
30
  - max-age=0, private, must-revalidate
25
31
  Content-Type:
@@ -34,51 +40,49 @@ http_interactions:
34
40
  X-Ratelimit-Limit:
35
41
  - '250000'
36
42
  X-Ratelimit-Remaining:
37
- - '249986'
43
+ - '249995'
38
44
  X-Ratelimit-Reset:
39
- - '1574409600'
45
+ - '1592478000'
40
46
  X-Request-Id:
41
- - a5ba5ff1-a40c-471d-af9f-05cbf4b35e9c
47
+ - 3c0417c1-397b-4f71-b60c-c2a2082a435a
42
48
  X-Runtime:
43
- - '0.010196'
44
- Content-Length:
45
- - '46'
49
+ - '0.012552'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Fri, 22 Nov 2019 07:59:44 GMT
53
+ - Thu, 18 Jun 2020 10:03:06 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-hhn4074-HHN
57
+ - cache-hhn4023-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1574409584.278113,VS0,VE18
63
+ - S1592474586.184983,VS0,VE16
62
64
  Vary:
63
65
  - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
68
  string: '{"message":"success"}'
67
69
  http_version:
68
- recorded_at: Fri, 22 Nov 2019 07:59:44 GMT
70
+ recorded_at: Thu, 18 Jun 2020 10:03:06 GMT
69
71
  - request:
70
72
  method: post
71
73
  uri: "<BRAZE_REST_URL>/subscription/status/set"
72
74
  body:
73
75
  encoding: UTF-8
74
- string: '{"api_key":"<BRAZE_REST_API_KEY>","external_id":"test-gem-002","subscription_group_id":"0201b87a-ef6e-4410-9412-a298c4c1206d","subscription_state":"unsubscribed"}'
76
+ string: '{"external_id":"test-user-2","subscription_group_id":"ed06e19a-69b1-4f9b-a452-2db2c4e303a8","subscription_state":"unsubscribed"}'
75
77
  headers:
76
78
  Content-Type:
77
79
  - application/json
78
80
  Accept:
79
81
  - application/json
80
82
  User-Agent:
81
- - Braze Ruby gem v0.2.2
83
+ - Braze Ruby gem v0.3.3
84
+ Authorization:
85
+ - Bearer <BRAZE_REST_API_KEY>
82
86
  Accept-Encoding:
83
87
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
84
88
  response:
@@ -86,6 +90,10 @@ http_interactions:
86
90
  code: 201
87
91
  message: Created
88
92
  headers:
93
+ Connection:
94
+ - keep-alive
95
+ Content-Length:
96
+ - '46'
89
97
  Cache-Control:
90
98
  - max-age=0, private, must-revalidate
91
99
  Content-Type:
@@ -100,41 +108,37 @@ http_interactions:
100
108
  X-Ratelimit-Limit:
101
109
  - '250000'
102
110
  X-Ratelimit-Remaining:
103
- - '249985'
111
+ - '249994'
104
112
  X-Ratelimit-Reset:
105
- - '1574409600'
113
+ - '1592478000'
106
114
  X-Request-Id:
107
- - 7721b688-c1f0-423c-bb35-b967dd92bd21
115
+ - b49b0519-bb0a-4e16-b9c0-9d5af6fee340
108
116
  X-Runtime:
109
- - '0.007053'
110
- Content-Length:
111
- - '46'
117
+ - '0.012962'
112
118
  Accept-Ranges:
113
119
  - bytes
114
120
  Date:
115
- - Fri, 22 Nov 2019 07:59:44 GMT
121
+ - Thu, 18 Jun 2020 10:03:06 GMT
116
122
  Via:
117
123
  - 1.1 varnish
118
- Connection:
119
- - keep-alive
120
124
  X-Served-By:
121
- - cache-hhn4067-HHN
125
+ - cache-hhn4057-HHN
122
126
  X-Cache:
123
127
  - MISS
124
128
  X-Cache-Hits:
125
129
  - '0'
126
130
  X-Timer:
127
- - S1574409584.489346,VS0,VE53
131
+ - S1592474586.279449,VS0,VE16
128
132
  Vary:
129
133
  - Origin,Accept-Encoding
130
134
  body:
131
135
  encoding: ASCII-8BIT
132
136
  string: '{"message":"success"}'
133
137
  http_version:
134
- recorded_at: Fri, 22 Nov 2019 07:59:44 GMT
138
+ recorded_at: Thu, 18 Jun 2020 10:03:06 GMT
135
139
  - request:
136
140
  method: get
137
- uri: "<BRAZE_REST_URL>/subscription/user/status?api_key=<BRAZE_REST_API_KEY>&external_id%5B%5D=test-gem-001&external_id%5B%5D=test-gem-002&external_id%5B%5D=test-gem-003"
141
+ uri: "<BRAZE_REST_URL>/subscription/user/status?external_id%5B%5D=test-user-1&external_id%5B%5D=test-user-2&external_id%5B%5D=test-user-3"
138
142
  body:
139
143
  encoding: US-ASCII
140
144
  string: ''
@@ -144,7 +148,9 @@ http_interactions:
144
148
  Accept:
145
149
  - application/json
146
150
  User-Agent:
147
- - Braze Ruby gem v0.2.2
151
+ - Braze Ruby gem v0.3.3
152
+ Authorization:
153
+ - Bearer <BRAZE_REST_API_KEY>
148
154
  Accept-Encoding:
149
155
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
150
156
  response:
@@ -152,12 +158,16 @@ http_interactions:
152
158
  code: 200
153
159
  message: OK
154
160
  headers:
161
+ Connection:
162
+ - keep-alive
163
+ Content-Length:
164
+ - '233'
155
165
  Cache-Control:
156
166
  - max-age=0, private, must-revalidate
157
167
  Content-Type:
158
168
  - application/json
159
169
  Etag:
160
- - W/"c07db3553c76472c579e5181e73ec603"
170
+ - W/"73587e244e20caff598bc8613a738936"
161
171
  Server:
162
172
  - nginx
163
173
  Strict-Transport-Security:
@@ -166,42 +176,36 @@ http_interactions:
166
176
  X-Ratelimit-Limit:
167
177
  - '250000'
168
178
  X-Ratelimit-Remaining:
169
- - '249984'
179
+ - '249993'
170
180
  X-Ratelimit-Reset:
171
- - '1574409600'
181
+ - '1592478000'
172
182
  X-Request-Id:
173
- - 49cde848-ee57-46f7-9692-5023fb8be287
183
+ - 2c909898-af08-4996-b063-cccd07cbee21
174
184
  X-Runtime:
175
- - '0.024667'
185
+ - '0.291483'
176
186
  Accept-Ranges:
177
187
  - bytes
178
188
  - bytes
179
189
  Age:
180
190
  - '0'
181
191
  - '0'
182
- Content-Length:
183
- - '228'
184
192
  Date:
185
- - Fri, 22 Nov 2019 07:59:44 GMT
193
+ - Thu, 18 Jun 2020 10:03:06 GMT
186
194
  Via:
187
195
  - 1.1 varnish
188
- Connection:
189
- - keep-alive
190
196
  X-Served-By:
191
- - cache-hhn4043-HHN
197
+ - cache-hhn4039-HHN
192
198
  X-Cache:
193
199
  - MISS
194
200
  X-Cache-Hits:
195
201
  - '0'
196
202
  X-Timer:
197
- - S1574409585.753149,VS0,VE28
203
+ - S1592474586.385788,VS0,VE300
198
204
  Vary:
199
205
  - Origin,Accept-Encoding
200
206
  body:
201
207
  encoding: ASCII-8BIT
202
- string: '{"users":[{"email":null,"phone":null,"external_id":"test-gem-001","subscription_groups":[{"id":"0201b87a-ef6e-4410-9412-a298c4c1206d","name":"Test
203
- Subscription Group","channel":"email","status":"Subscribed"}]},{"email":null,"phone":null,"external_id":"test-gem-002","subscription_groups":[{"id":"0201b87a-ef6e-4410-9412-a298c4c1206d","name":"Test
204
- Subscription Group","channel":"email","status":"Unsubscribed"}]},{"email":null,"phone":null,"external_id":"test-gem-003","subscription_groups":[]}],"total_count":3,"message":"success"}'
208
+ string: '{"users":[{"email":"test-user-1@test.com","phone":null,"external_id":"test-user-1","subscription_groups":[{"id":"ed06e19a-69b1-4f9b-a452-2db2c4e303a8","name":"test-subscription-group","channel":"email","status":"Subscribed"}]},{"email":"test-user-2@test.com","phone":null,"external_id":"test-user-2","subscription_groups":[{"id":"ed06e19a-69b1-4f9b-a452-2db2c4e303a8","name":"test-subscription-group","channel":"email","status":"Unsubscribed"}]},{"email":"test-user-3@test.com","phone":null,"external_id":"test-user-3","subscription_groups":[]}],"total_count":3,"message":"success"}'
205
209
  http_version:
206
- recorded_at: Fri, 22 Nov 2019 07:59:44 GMT
210
+ recorded_at: Thu, 18 Jun 2020 10:03:06 GMT
207
211
  recorded_with: VCR 5.0.0
@@ -5,23 +5,29 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/track"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"non-existent","attributes":[{"external_id":1,"foo":"bar"}],"events":[{"external_id":1,"name":"baz","time":"2019-02-15
8
+ string: '{"attributes":[{"external_id":1,"foo":"bar"}],"events":[{"external_id":1,"name":"baz","time":"2019-02-15
9
9
  00:00:00 -0500"}],"purchases":[{"external_id":1,"product_id":1,"time":"2019-02-15
10
10
  00:00:00 -0500","currency":"CAD","price":1.0}]}'
11
11
  headers:
12
- User-Agent:
13
- - Faraday v0.14.0
14
12
  Content-Type:
15
13
  - application/json
14
+ Accept:
15
+ - application/json
16
+ User-Agent:
17
+ - Braze Ruby gem v0.3.3
18
+ Authorization:
19
+ - Bearer non-existent
16
20
  Accept-Encoding:
17
21
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
- Accept:
19
- - "*/*"
20
22
  response:
21
23
  status:
22
24
  code: 401
23
25
  message: Unauthorized
24
26
  headers:
27
+ Connection:
28
+ - keep-alive
29
+ Content-Length:
30
+ - '69'
25
31
  Cache-Control:
26
32
  - no-cache
27
33
  Content-Type:
@@ -31,38 +37,34 @@ http_interactions:
31
37
  Strict-Transport-Security:
32
38
  - max-age=0; includeSubDomains
33
39
  X-Ratelimit-Limit:
34
- - '0'
40
+ - ''
35
41
  X-Ratelimit-Remaining:
36
- - '0'
42
+ - ''
37
43
  X-Ratelimit-Reset:
38
- - '1524002400'
44
+ - ''
39
45
  X-Request-Id:
40
- - 7089825e-0390-4b95-b471-3c096e1df0e6
46
+ - 455108aa-0cf4-438f-8d27-489896ca716b
41
47
  X-Runtime:
42
- - '0.006623'
43
- Content-Length:
44
- - '85'
48
+ - '0.001106'
45
49
  Accept-Ranges:
46
50
  - bytes
47
51
  Date:
48
- - Tue, 17 Apr 2018 21:08:08 GMT
52
+ - Wed, 17 Jun 2020 20:31:42 GMT
49
53
  Via:
50
54
  - 1.1 varnish
51
- Connection:
52
- - keep-alive
53
55
  X-Served-By:
54
- - cache-pdk17844-PDK
56
+ - cache-hhn4044-HHN
55
57
  X-Cache:
56
58
  - MISS
57
59
  X-Cache-Hits:
58
60
  - '0'
59
61
  X-Timer:
60
- - S1523999288.903112,VS0,VE193
62
+ - S1592425903.848710,VS0,VE4
61
63
  Vary:
62
- - Accept-Encoding
64
+ - Origin,Accept-Encoding
63
65
  body:
64
66
  encoding: ASCII-8BIT
65
- string: '{"message":"Invalid App Group API Identifier: non-existent"}'
67
+ string: '{"message":"Invalid API key: non-existent"}'
66
68
  http_version:
67
- recorded_at: Tue, 17 Apr 2018 21:08:08 GMT
68
- recorded_with: VCR 4.0.0
69
+ recorded_at: Wed, 17 Jun 2020 20:31:42 GMT
70
+ recorded_with: VCR 5.0.0
@@ -5,23 +5,29 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/track"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","attributes":[{"external_id":1,"foo":"bar"}],"events":[{"external_id":1,"name":"baz","time":"2019-02-15
8
+ string: '{"attributes":[{"external_id":1,"foo":"bar"}],"events":[{"external_id":1,"name":"baz","time":"2019-02-15
9
9
  00:00:00 -0500"}],"purchases":[{"external_id":1,"product_id":1,"time":"2019-02-15
10
10
  00:00:00 -0500","currency":"CAD","price":1.0}]}'
11
11
  headers:
12
- User-Agent:
13
- - Faraday v0.14.0
14
12
  Content-Type:
15
13
  - application/json
14
+ Accept:
15
+ - application/json
16
+ User-Agent:
17
+ - Braze Ruby gem v0.3.3
18
+ Authorization:
19
+ - Bearer <BRAZE_REST_API_KEY>
16
20
  Accept-Encoding:
17
21
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
- Accept:
19
- - "*/*"
20
22
  response:
21
23
  status:
22
24
  code: 201
23
25
  message: Created
24
26
  headers:
27
+ Connection:
28
+ - keep-alive
29
+ Content-Length:
30
+ - '85'
25
31
  Cache-Control:
26
32
  - max-age=0, private, must-revalidate
27
33
  Content-Type:
@@ -34,38 +40,34 @@ http_interactions:
34
40
  - max-age=0; includeSubDomains
35
41
  - max-age=31536000; includeSubDomains
36
42
  X-Ratelimit-Limit:
37
- - '50000'
43
+ - '250000'
38
44
  X-Ratelimit-Remaining:
39
- - '50000'
45
+ - '250000'
40
46
  X-Ratelimit-Reset:
41
- - '1524002400'
47
+ - '1592427600'
42
48
  X-Request-Id:
43
- - af452a7f-9be9-417d-b9d5-2c4db3de274d
49
+ - 2e7a73fc-7efe-4c04-b837-c696cb10735a
44
50
  X-Runtime:
45
- - '0.020310'
46
- Content-Length:
47
- - '85'
51
+ - '0.007710'
48
52
  Accept-Ranges:
49
53
  - bytes
50
54
  Date:
51
- - Tue, 17 Apr 2018 21:08:07 GMT
55
+ - Wed, 17 Jun 2020 20:31:42 GMT
52
56
  Via:
53
57
  - 1.1 varnish
54
- Connection:
55
- - keep-alive
56
58
  X-Served-By:
57
- - cache-pdk17837-PDK
59
+ - cache-hhn4030-HHN
58
60
  X-Cache:
59
61
  - MISS
60
62
  X-Cache-Hits:
61
63
  - '0'
62
64
  X-Timer:
63
- - S1523999287.293178,VS0,VE220
65
+ - S1592425903.632582,VS0,VE10
64
66
  Vary:
65
- - Accept-Encoding
67
+ - Origin,Accept-Encoding
66
68
  body:
67
69
  encoding: ASCII-8BIT
68
70
  string: '{"attributes_processed":1,"events_processed":1,"purchases_processed":1,"message":"success"}'
69
71
  http_version:
70
- recorded_at: Tue, 17 Apr 2018 21:08:07 GMT
71
- recorded_with: VCR 4.0.0
72
+ recorded_at: Wed, 17 Jun 2020 20:31:42 GMT
73
+ recorded_with: VCR 5.0.0
@@ -5,23 +5,29 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/track"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","attributes":[{"external_id":1,"foo":"bar"}],"events":[{"external_id":1,"name":"baz","time":"2019-02-15
8
+ string: '{"attributes":[{"external_id":1,"foo":"bar"}],"events":[{"external_id":1,"name":"baz","time":"2019-02-15
9
9
  00:00:00 -0500"}],"purchases":[{"external_id":1,"product_id":1,"time":"2019-02-15
10
10
  00:00:00 -0500","currency":"CAD","price":1.0}]}'
11
11
  headers:
12
- User-Agent:
13
- - Faraday v0.14.0
14
12
  Content-Type:
15
13
  - application/json
14
+ Accept:
15
+ - application/json
16
+ User-Agent:
17
+ - Braze Ruby gem v0.3.3
18
+ Authorization:
19
+ - Bearer <BRAZE_REST_API_KEY>
16
20
  Accept-Encoding:
17
21
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
- Accept:
19
- - "*/*"
20
22
  response:
21
23
  status:
22
24
  code: 201
23
25
  message: Created
24
26
  headers:
27
+ Connection:
28
+ - keep-alive
29
+ Content-Length:
30
+ - '85'
25
31
  Cache-Control:
26
32
  - max-age=0, private, must-revalidate
27
33
  Content-Type:
@@ -34,38 +40,34 @@ http_interactions:
34
40
  - max-age=0; includeSubDomains
35
41
  - max-age=31536000; includeSubDomains
36
42
  X-Ratelimit-Limit:
37
- - '50000'
43
+ - '250000'
38
44
  X-Ratelimit-Remaining:
39
- - '50000'
45
+ - '250000'
40
46
  X-Ratelimit-Reset:
41
- - '1524002400'
47
+ - '1592427600'
42
48
  X-Request-Id:
43
- - e810e390-4c31-49ac-abd4-5b1151cc3c33
49
+ - 75dc3ac0-d4d2-4278-89d0-b29e540dc719
44
50
  X-Runtime:
45
- - '0.012176'
46
- Content-Length:
47
- - '85'
51
+ - '0.008741'
48
52
  Accept-Ranges:
49
53
  - bytes
50
54
  Date:
51
- - Tue, 17 Apr 2018 21:08:07 GMT
55
+ - Wed, 17 Jun 2020 20:31:42 GMT
52
56
  Via:
53
57
  - 1.1 varnish
54
- Connection:
55
- - keep-alive
56
58
  X-Served-By:
57
- - cache-pdk17824-PDK
59
+ - cache-hhn4063-HHN
58
60
  X-Cache:
59
61
  - MISS
60
62
  X-Cache-Hits:
61
63
  - '0'
62
64
  X-Timer:
63
- - S1523999288.612820,VS0,VE214
65
+ - S1592425903.749169,VS0,VE11
64
66
  Vary:
65
- - Accept-Encoding
67
+ - Origin,Accept-Encoding
66
68
  body:
67
69
  encoding: ASCII-8BIT
68
70
  string: '{"attributes_processed":1,"events_processed":1,"purchases_processed":1,"message":"success"}'
69
71
  http_version:
70
- recorded_at: Tue, 17 Apr 2018 21:08:07 GMT
71
- recorded_with: VCR 4.0.0
72
+ recorded_at: Wed, 17 Jun 2020 20:31:42 GMT
73
+ recorded_with: VCR 5.0.0