braze_ruby 0.3.1 → 0.4.2

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.
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,21 +5,27 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/messages/send"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"non-existent","messages":{"apple_push":{"alert":"hello"}},"external_user_ids":[1]}'
8
+ string: '{"messages":{"apple_push":{"alert":"hello"}},"external_user_ids":[12345]}'
9
9
  headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
10
  Content-Type:
13
11
  - application/json
12
+ Accept:
13
+ - application/json
14
+ User-Agent:
15
+ - Braze Ruby gem v0.3.3
16
+ Authorization:
17
+ - Bearer non-existent
14
18
  Accept-Encoding:
15
19
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
20
  response:
19
21
  status:
20
22
  code: 401
21
23
  message: Unauthorized
22
24
  headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '69'
23
29
  Cache-Control:
24
30
  - no-cache
25
31
  Content-Type:
@@ -35,32 +41,28 @@ http_interactions:
35
41
  X-Ratelimit-Reset:
36
42
  - ''
37
43
  X-Request-Id:
38
- - b9f8ce77-4265-46a4-8010-04dad0d35c92
44
+ - ede47716-681c-40c8-8c3f-90cb22269092
39
45
  X-Runtime:
40
- - '0.006126'
41
- Content-Length:
42
- - '85'
46
+ - '0.000632'
43
47
  Accept-Ranges:
44
48
  - bytes
45
49
  Date:
46
- - Tue, 17 Apr 2018 21:08:23 GMT
50
+ - Wed, 17 Jun 2020 20:37:30 GMT
47
51
  Via:
48
52
  - 1.1 varnish
49
- Connection:
50
- - keep-alive
51
53
  X-Served-By:
52
- - cache-pdk17839-PDK
54
+ - cache-hhn4061-HHN
53
55
  X-Cache:
54
56
  - MISS
55
57
  X-Cache-Hits:
56
58
  - '0'
57
59
  X-Timer:
58
- - S1523999303.988243,VS0,VE44
60
+ - S1592426251.943565,VS0,VE48
59
61
  Vary:
60
- - Accept-Encoding
62
+ - Origin,Accept-Encoding
61
63
  body:
62
64
  encoding: ASCII-8BIT
63
- string: '{"message":"Invalid App Group API Identifier: non-existent"}'
65
+ string: '{"message":"Invalid API key: non-existent"}'
64
66
  http_version:
65
- recorded_at: Tue, 17 Apr 2018 21:08:23 GMT
66
- recorded_with: VCR 4.0.0
67
+ recorded_at: Wed, 17 Jun 2020 20:37:31 GMT
68
+ recorded_with: VCR 5.0.0
@@ -5,65 +5,67 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/messages/send"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","messages":{"apple_push":{"alert":"hello"}},"external_user_ids":[1]}'
8
+ string: '{"messages":{"apple_push":{"alert":"hello"}},"external_user_ids":[12345]}'
9
9
  headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
10
  Content-Type:
13
11
  - application/json
12
+ Accept:
13
+ - application/json
14
+ User-Agent:
15
+ - Braze Ruby gem v0.3.3
16
+ Authorization:
17
+ - Bearer <BRAZE_REST_API_KEY>
14
18
  Accept-Encoding:
15
19
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
20
  response:
19
21
  status:
20
22
  code: 201
21
23
  message: Created
22
24
  headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '94'
23
29
  Cache-Control:
24
30
  - max-age=0, private, must-revalidate
25
31
  Content-Type:
26
32
  - application/json
27
33
  Etag:
28
- - W/"838a7c62adda8d131d694ae13ba2c5b7"
34
+ - W/"b9e7fd89d471f3f07bc5423aebe2ffec"
29
35
  Server:
30
36
  - nginx
31
37
  Strict-Transport-Security:
32
38
  - max-age=0; includeSubDomains
33
39
  - max-age=31536000; includeSubDomains
34
40
  X-Ratelimit-Limit:
35
- - '50000'
41
+ - '250000'
36
42
  X-Ratelimit-Remaining:
37
- - '49989'
43
+ - '249954'
38
44
  X-Ratelimit-Reset:
39
- - '1524002400'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - aec47065-45d4-4fb7-a593-a4ffd110c314
47
+ - e2e72c50-28ca-48b1-a8a0-4f5358ee3e71
42
48
  X-Runtime:
43
- - '0.013801'
44
- Content-Length:
45
- - '46'
49
+ - '0.015367'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Tue, 17 Apr 2018 21:08:22 GMT
53
+ - Wed, 17 Jun 2020 20:37:30 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-pdk17821-PDK
57
+ - cache-hhn4020-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1523999302.923924,VS0,VE423
63
+ - S1592426251.662252,VS0,VE65
62
64
  Vary:
63
- - Accept-Encoding
65
+ - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"message":"success"}'
68
+ string: '{"dispatch_id":"dad3e2b4166cf9902f5ce54215241a33","message":"success"}'
67
69
  http_version:
68
- recorded_at: Tue, 17 Apr 2018 21:08:22 GMT
69
- recorded_with: VCR 4.0.0
70
+ recorded_at: Wed, 17 Jun 2020 20:37:30 GMT
71
+ recorded_with: VCR 5.0.0
@@ -5,65 +5,67 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/messages/send"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","messages":{"apple_push":{"alert":"hello"}},"external_user_ids":[1]}'
8
+ string: '{"messages":{"apple_push":{"alert":"hello"}},"external_user_ids":[12345]}'
9
9
  headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
10
  Content-Type:
13
11
  - application/json
12
+ Accept:
13
+ - application/json
14
+ User-Agent:
15
+ - Braze Ruby gem v0.3.3
16
+ Authorization:
17
+ - Bearer <BRAZE_REST_API_KEY>
14
18
  Accept-Encoding:
15
19
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
20
  response:
19
21
  status:
20
22
  code: 201
21
23
  message: Created
22
24
  headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '94'
23
29
  Cache-Control:
24
30
  - max-age=0, private, must-revalidate
25
31
  Content-Type:
26
32
  - application/json
27
33
  Etag:
28
- - W/"838a7c62adda8d131d694ae13ba2c5b7"
34
+ - W/"c0f33a016781b92e299866060ef19a97"
29
35
  Server:
30
36
  - nginx
31
37
  Strict-Transport-Security:
32
38
  - max-age=0; includeSubDomains
33
39
  - max-age=31536000; includeSubDomains
34
40
  X-Ratelimit-Limit:
35
- - '50000'
41
+ - '250000'
36
42
  X-Ratelimit-Remaining:
37
- - '49988'
43
+ - '249953'
38
44
  X-Ratelimit-Reset:
39
- - '1524002400'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - 864641c8-44d3-4389-84a1-e411ee44561e
47
+ - 27779097-2153-47ba-9dad-196e9673d913
42
48
  X-Runtime:
43
- - '0.027612'
44
- Content-Length:
45
- - '46'
49
+ - '0.009393'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Tue, 17 Apr 2018 21:08:22 GMT
53
+ - Wed, 17 Jun 2020 20:37:30 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-pdk17839-PDK
57
+ - cache-hhn4076-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1523999302.411567,VS0,VE410
63
+ - S1592426251.823361,VS0,VE12
62
64
  Vary:
63
- - Accept-Encoding
65
+ - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"message":"success"}'
68
+ string: '{"dispatch_id":"ea0532cddfc97cd4e5767b351d6af0eb","message":"success"}'
67
69
  http_version:
68
- recorded_at: Tue, 17 Apr 2018 21:08:22 GMT
69
- recorded_with: VCR 4.0.0
70
+ recorded_at: Wed, 17 Jun 2020 20:37:30 GMT
71
+ recorded_with: VCR 5.0.0
@@ -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,36 +40,32 @@ http_interactions:
34
40
  X-Ratelimit-Limit:
35
41
  - '250000'
36
42
  X-Ratelimit-Remaining:
37
- - '249977'
43
+ - '249986'
38
44
  X-Ratelimit-Reset:
39
- - '1574409600'
45
+ - '1592478000'
40
46
  X-Request-Id:
41
- - 9e429cb2-6c63-44e8-bb25-97d23edb25d1
47
+ - 535f2a1b-31db-456a-9932-a927c56cfbb3
42
48
  X-Runtime:
43
- - '0.008757'
44
- Content-Length:
45
- - '46'
49
+ - '0.006043'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Fri, 22 Nov 2019 07:59:46 GMT
53
+ - Thu, 18 Jun 2020 10:03:07 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-hhn4035-HHN
57
+ - cache-hhn4056-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1574409586.236608,VS0,VE18
63
+ - S1592474588.853802,VS0,VE9
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:46 GMT
70
+ recorded_at: Thu, 18 Jun 2020 10:03:07 GMT
69
71
  recorded_with: VCR 5.0.0
@@ -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":"non-existing-subscription-group","subscription_state":"subscribed"}'
8
+ string: '{"external_id":"test-user-1","subscription_group_id":"non-existing-subscription-group","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: 400
21
23
  message: Bad Request
22
24
  headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '69'
23
29
  Cache-Control:
24
30
  - no-cache
25
31
  Content-Type:
@@ -31,36 +37,32 @@ http_interactions:
31
37
  X-Ratelimit-Limit:
32
38
  - '250000'
33
39
  X-Ratelimit-Remaining:
34
- - '249974'
40
+ - '249983'
35
41
  X-Ratelimit-Reset:
36
- - '1574409600'
42
+ - '1592478000'
37
43
  X-Request-Id:
38
- - 9d318398-4dbe-4fca-8bc8-fed3002af64a
44
+ - 1e81ac78-b72f-476a-8259-70f90aa2d170
39
45
  X-Runtime:
40
- - '0.013998'
41
- Content-Length:
42
- - '69'
46
+ - '0.013319'
43
47
  Accept-Ranges:
44
48
  - bytes
45
49
  Date:
46
- - Fri, 22 Nov 2019 07:59:46 GMT
50
+ - Thu, 18 Jun 2020 10:03:08 GMT
47
51
  Via:
48
52
  - 1.1 varnish
49
- Connection:
50
- - keep-alive
51
53
  X-Served-By:
52
- - cache-hhn4070-HHN
54
+ - cache-hhn4038-HHN
53
55
  X-Cache:
54
56
  - MISS
55
57
  X-Cache-Hits:
56
58
  - '0'
57
59
  X-Timer:
58
- - S1574409587.847958,VS0,VE17
60
+ - S1592474588.160260,VS0,VE16
59
61
  Vary:
60
62
  - Origin,Accept-Encoding
61
63
  body:
62
64
  encoding: ASCII-8BIT
63
65
  string: '{"message":"Invalid subscription group ID"}'
64
66
  http_version:
65
- recorded_at: Fri, 22 Nov 2019 07:59:46 GMT
67
+ recorded_at: Thu, 18 Jun 2020 10:03:08 GMT
66
68
  recorded_with: VCR 5.0.0
@@ -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-002","subscription_group_id":"0201b87a-ef6e-4410-9412-a298c4c1206d","subscription_state":"subscribed"}'
8
+ string: '{"external_id":"test-user-2","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
- - '249976'
43
+ - '249985'
38
44
  X-Ratelimit-Reset:
39
- - '1574409600'
45
+ - '1592478000'
40
46
  X-Request-Id:
41
- - c59a4c1a-8e48-487a-ba11-5bac411e109b
47
+ - d808049c-58d0-413b-84ed-c9976614bc96
42
48
  X-Runtime:
43
- - '0.005244'
44
- Content-Length:
45
- - '46'
49
+ - '0.011481'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Fri, 22 Nov 2019 07:59:46 GMT
53
+ - Thu, 18 Jun 2020 10:03:07 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-hhn4022-HHN
57
+ - cache-hhn4056-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1574409586.449783,VS0,VE13
63
+ - S1592474588.950706,VS0,VE15
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:46 GMT
70
+ recorded_at: Thu, 18 Jun 2020 10:03:07 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,36 +108,32 @@ http_interactions:
100
108
  X-Ratelimit-Limit:
101
109
  - '250000'
102
110
  X-Ratelimit-Remaining:
103
- - '249975'
111
+ - '249984'
104
112
  X-Ratelimit-Reset:
105
- - '1574409600'
113
+ - '1592478000'
106
114
  X-Request-Id:
107
- - 596f4df6-b90e-4de8-94cb-43e62b03ee7d
115
+ - cf4a6c76-ff97-4790-8a24-d0febe4764c4
108
116
  X-Runtime:
109
- - '0.006277'
110
- Content-Length:
111
- - '46'
117
+ - '0.010860'
112
118
  Accept-Ranges:
113
119
  - bytes
114
120
  Date:
115
- - Fri, 22 Nov 2019 07:59:46 GMT
121
+ - Thu, 18 Jun 2020 10:03:08 GMT
116
122
  Via:
117
123
  - 1.1 varnish
118
- Connection:
119
- - keep-alive
120
124
  X-Served-By:
121
- - cache-hhn4023-HHN
125
+ - cache-hhn4056-HHN
122
126
  X-Cache:
123
127
  - MISS
124
128
  X-Cache-Hits:
125
129
  - '0'
126
130
  X-Timer:
127
- - S1574409587.663692,VS0,VE14
131
+ - S1592474588.057509,VS0,VE14
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:46 GMT
138
+ recorded_at: Thu, 18 Jun 2020 10:03:08 GMT
135
139
  recorded_with: VCR 5.0.0