braze_ruby 0.2.1 → 0.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.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +30 -0
  3. data/.gitignore +1 -0
  4. data/Gemfile +2 -0
  5. data/Gemfile.lock +39 -39
  6. data/README.md +48 -0
  7. data/Rakefile +2 -0
  8. data/braze_ruby.gemspec +7 -7
  9. data/lib/braze_ruby.rb +2 -0
  10. data/lib/braze_ruby/api.rb +12 -4
  11. data/lib/braze_ruby/deprecated.rb +2 -0
  12. data/lib/braze_ruby/endpoints.rb +3 -0
  13. data/lib/braze_ruby/endpoints/campaigns.rb +3 -1
  14. data/lib/braze_ruby/endpoints/canvas.rb +15 -0
  15. data/lib/braze_ruby/endpoints/delete_users.rb +4 -2
  16. data/lib/braze_ruby/endpoints/email_status.rb +3 -1
  17. data/lib/braze_ruby/endpoints/email_sync.rb +4 -2
  18. data/lib/braze_ruby/endpoints/identify_users.rb +19 -0
  19. data/lib/braze_ruby/endpoints/schedule_messages.rb +3 -1
  20. data/lib/braze_ruby/endpoints/send_messages.rb +3 -1
  21. data/lib/braze_ruby/endpoints/subscription.rb +20 -0
  22. data/lib/braze_ruby/endpoints/track_users.rb +7 -5
  23. data/lib/braze_ruby/http.rb +20 -5
  24. data/lib/braze_ruby/rest.rb +8 -0
  25. data/lib/braze_ruby/rest/base.rb +6 -2
  26. data/lib/braze_ruby/rest/canvas_details.rb +20 -0
  27. data/lib/braze_ruby/rest/delete_users.rb +3 -2
  28. data/lib/braze_ruby/rest/email_hard_bounces.rb +5 -5
  29. data/lib/braze_ruby/rest/email_status.rb +5 -5
  30. data/lib/braze_ruby/rest/email_unsubscribes.rb +5 -5
  31. data/lib/braze_ruby/rest/export_users.rb +7 -7
  32. data/lib/braze_ruby/rest/identify_users.rb +13 -0
  33. data/lib/braze_ruby/rest/list_segments.rb +4 -4
  34. data/lib/braze_ruby/rest/schedule_messages.rb +5 -5
  35. data/lib/braze_ruby/rest/send_messages.rb +5 -5
  36. data/lib/braze_ruby/rest/subscription_status_get.rb +20 -0
  37. data/lib/braze_ruby/rest/subscription_status_set.rb +20 -0
  38. data/lib/braze_ruby/rest/subscription_user_status.rb +20 -0
  39. data/lib/braze_ruby/rest/track_users.rb +3 -2
  40. data/lib/braze_ruby/rest/trigger_campaign_send.rb +6 -8
  41. data/lib/braze_ruby/rest/trigger_canvas_send.rb +20 -0
  42. data/lib/braze_ruby/version.rb +3 -1
  43. data/spec/braze_ruby/api_spec.rb +2 -0
  44. data/spec/braze_ruby/endpoints/delete_users_spec.rb +3 -1
  45. data/spec/braze_ruby/endpoints/track_users_spec.rb +10 -8
  46. data/spec/braze_ruby/http_spec.rb +48 -0
  47. data/spec/braze_ruby/rest/delete_users_spec.rb +5 -3
  48. data/spec/braze_ruby/rest/email_status_spec.rb +3 -2
  49. data/spec/braze_ruby/rest/export_users_spec.rb +5 -3
  50. data/spec/braze_ruby/rest/identify_users_spec.rb +23 -0
  51. data/spec/braze_ruby/rest/schedule_messages_spec.rb +3 -2
  52. data/spec/braze_ruby/rest/send_messages_spec.rb +10 -13
  53. data/spec/braze_ruby/rest/track_users_spec.rb +12 -9
  54. data/spec/factories.rb +2 -0
  55. data/spec/fixtures/responses/campaigns/trigger_send/sends_an_email.yml +17 -15
  56. data/spec/fixtures/responses/canvas/details/returns_error_when_no_canvas.yml +69 -0
  57. data/spec/fixtures/responses/canvas/trigger_send/sends_a_canvas.yml +71 -0
  58. data/spec/fixtures/responses/delete_users/unauthorized/responds_with_unauthorized.yml +20 -18
  59. data/spec/fixtures/responses/delete_users/with_success/responds_with_created.yml +25 -23
  60. data/spec/fixtures/responses/delete_users/with_success/responds_with_success_message.yml +25 -23
  61. data/spec/fixtures/responses/email_status/existing_email/responds_with_created.yml +22 -20
  62. data/spec/fixtures/responses/email_status/existing_email/responds_with_success_message.yml +22 -20
  63. data/spec/fixtures/responses/email_status/unknown_email/responds_with_bad_request.yml +22 -20
  64. data/spec/fixtures/responses/email_status/unknown_email/responds_with_success_message.yml +22 -20
  65. data/spec/fixtures/responses/email_sync/hard_bounces/responds_with_empty_array_when_no_hard_bounces.yml +18 -16
  66. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_empty_array_when_no_unsubscribes.yml +18 -16
  67. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_unsubscribed_emails.yml +21 -20
  68. data/spec/fixtures/responses/export_users/by_ids/with_success/responds_with_created.yml +25 -22
  69. data/spec/fixtures/responses/export_users/by_segment/with_success/responds_with_created.yml +24 -22
  70. data/spec/fixtures/responses/identify_users/unauthorized/responds_with_unauthorized.yml +68 -0
  71. data/spec/fixtures/responses/identify_users/with_success/responds_with_created.yml +71 -0
  72. data/spec/fixtures/responses/identify_users/with_success/responds_with_success_message.yml +71 -0
  73. data/spec/fixtures/responses/list_segments/with_success/responds_with_a_list_of_segments.yml +35 -35
  74. data/spec/fixtures/responses/list_segments/with_success/responds_with_success.yml +35 -35
  75. data/spec/fixtures/responses/schedule_messages/unauthorized/responds_with_unauthorize.yml +20 -19
  76. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_created.yml +24 -23
  77. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_success_message.yml +24 -23
  78. data/spec/fixtures/responses/send_messages/unauthorized/responds_with_unauthorized.yml +20 -18
  79. data/spec/fixtures/responses/send_messages/with_success/responds_with_created.yml +24 -22
  80. data/spec/fixtures/responses/send_messages/with_success/responds_with_success_message.yml +24 -22
  81. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscribing/subscribes_the_user.yml +71 -0
  82. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscription_group_does_not_exist/returns_an_error_status.yml +68 -0
  83. data/spec/fixtures/responses/subscription/subscription_status_set/when_unsubscribing/unsubscribes_the_user.yml +139 -0
  84. 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 +211 -0
  85. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_status_get/when_group_does_not_exist/returns_an_error.yml +199 -0
  86. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_user_status/returns_subscription_groups_and_status_for_every_group.yml +211 -0
  87. data/spec/fixtures/responses/track_users/unauthorized/responds_with_unauthorized.yml +23 -21
  88. data/spec/fixtures/responses/track_users/with_success/responds_with_created.yml +22 -20
  89. data/spec/fixtures/responses/track_users/with_success/responds_with_success_message.yml +22 -20
  90. data/spec/integrations/campaigns_spec.rb +6 -2
  91. data/spec/integrations/canvas_spec.rb +28 -0
  92. data/spec/integrations/delete_users_spec.rb +3 -0
  93. data/spec/integrations/email_status_spec.rb +2 -0
  94. data/spec/integrations/email_sync_spec.rb +4 -2
  95. data/spec/integrations/export_users_spec.rb +4 -2
  96. data/spec/integrations/identify_users_spec.rb +32 -0
  97. data/spec/integrations/list_segments_spec.rb +3 -1
  98. data/spec/integrations/schedule_messages_spec.rb +4 -1
  99. data/spec/integrations/send_messages_spec.rb +4 -1
  100. data/spec/integrations/subscription_spec.rb +149 -0
  101. data/spec/integrations/track_users_spec.rb +3 -0
  102. data/spec/spec_helper.rb +2 -8
  103. data/spec/support/factory_bot.rb +2 -0
  104. data/spec/support/integrations.rb +7 -1
  105. data/spec/support/vcr.rb +5 -1
  106. metadata +63 -21
@@ -5,65 +5,68 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/export/ids"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","external_ids":[1]}'
8
+ string: '{"external_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
+ - '448'
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/"a8eccb6359ba1adb300e19da464d87e6"
34
+ - W/"7df8cd8f88a14f379a69f3838271d7fc"
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
- - '49995'
43
+ - '249995'
38
44
  X-Ratelimit-Reset:
39
- - '1524002400'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - f720263b-e324-49ea-a74b-b6855cf41336
47
+ - 4d9fd8a1-a8bb-4e20-99b1-063365c51808
42
48
  X-Runtime:
43
- - '0.083452'
44
- Content-Length:
45
- - '319'
49
+ - '0.342278'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Tue, 17 Apr 2018 21:08:20 GMT
53
+ - Wed, 17 Jun 2020 20:14:30 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-pdk17841-PDK
57
+ - cache-hhn4030-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1523999300.120226,VS0,VE267
63
+ - S1592424870.344107,VS0,VE345
62
64
  Vary:
63
- - Accept-Encoding
65
+ - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"users":[{"created_at":"2018-04-17T17:28:56.807Z","external_id":"1","user_aliases":[],"appboy_id":"5ad62ed85941bafd80298dfc","braze_id":"5ad62ed85941bafd80298dfc","random_bucket":2118,"home_city":null,"total_revenue":19.03,"push_subscribe":"subscribed","email_subscribe":"subscribed","custom_attributes":{"foo":"bar"},"apps":[],"custom_events":[{"name":"baz","first":"2015-02-15T05:00:00.000Z","last":"2019-02-15T05:00:00.000Z","count":24}],"purchases":[{"name":"1","first":"2015-02-15T05:00:00.000Z","last":"2019-02-15T05:00:00.000Z","count":24}]}],"invalid_user_ids":[1],"message":"success"}'
68
+ string: '{"users":[{"created_at":"2020-06-17T20:01:33.385Z","external_id":"12345","user_aliases":[],"appboy_id":"5eea769d45bb2e1467418f92","braze_id":"5eea769d45bb2e1467418f92","first_name":"John","last_name":"Doe","random_bucket":5445,"email":"example@test.com","custom_attributes":{"string_attribute":"sherman","boolean_attribute_1":true,"integer_attribute":25,"array_attribute":["banana","apple"]},"total_revenue":0.0,"push_subscribe":"subscribed","email_subscribe":"subscribed","campaigns_received":[{"name":"campaign-test","api_campaign_id":"d8b73da7-0b7c-fc72-1d80-e59c7f20f0d3","last_received":"2020-06-17T20:04:49.193Z","in_control":false,"variation_name":"Variant
69
+ 1","variation_api_id":"f2123be2-74ac-4cff-b010-d0b6217595a1"}]}],"message":"success"}'
67
70
  http_version:
68
- recorded_at: Tue, 17 Apr 2018 21:08:20 GMT
69
- recorded_with: VCR 4.0.0
71
+ recorded_at: Wed, 17 Jun 2020 20:14:30 GMT
72
+ recorded_with: VCR 5.0.0
@@ -5,65 +5,67 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/export/segment"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","segment_id":"a8fde797-4c44-4406-8e6c-5850d323f169","callback_endpoint":"https://example.com"}'
8
+ string: '{"segment_id":"3aca937b-9bbc-4e42-9370-05e411967b2b","callback_endpoint":"https://example.com"}'
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
+ - '196'
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/"3ea7dd8571456c18ee0f64e21588cd18"
34
+ - W/"2e35da6e340b6bc894c81eb5d32fe5bd"
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
- - '49994'
43
+ - '249994'
38
44
  X-Ratelimit-Reset:
39
- - '1524002400'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - 383a399b-8622-432b-8e8c-3466bb2918aa
47
+ - 15c5b986-e83c-4fc5-bc7c-8245f2c10185
42
48
  X-Runtime:
43
- - '0.019441'
44
- Content-Length:
45
- - '193'
49
+ - '0.065960'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Tue, 17 Apr 2018 21:08:20 GMT
53
+ - Wed, 17 Jun 2020 20:14:30 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-pdk17823-PDK
57
+ - cache-hhn4075-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1523999301.520355,VS0,VE192
63
+ - S1592424871.804901,VS0,VE69
62
64
  Vary:
63
- - Accept-Encoding
65
+ - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"url":"https://appboy-03-data-export.s3.amazonaws.com/6GyY08ekLymivv4VS0uQFeWV1yP1OV99jgrGSJ4MmYg.zip","object_prefix":"9665a629-c9b2-499b-a2d8-f1f6fc19cf64-1523999300","message":"success"}'
68
+ string: '{"object_prefix":"e739ed46-9cd7-4142-b70f-843b89c5ac80-1592424870","url":"https://appboy-eu-data-export.s3.amazonaws.com/Iw_2CAuI2mvAemo2jRTbG6IBUkzpJNBbYSMwPHO082o.zip","message":"success"}'
67
69
  http_version:
68
- recorded_at: Tue, 17 Apr 2018 21:08:20 GMT
69
- recorded_with: VCR 4.0.0
70
+ recorded_at: Wed, 17 Jun 2020 20:14:30 GMT
71
+ recorded_with: VCR 5.0.0
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: "<BRAZE_REST_URL>/users/identify"
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"aliases_to_identify":[{"external_id":12345,"user_alias":{"alias_name":"abc","alias_label":"foo"}}]}'
9
+ headers:
10
+ Content-Type:
11
+ - application/json
12
+ Accept:
13
+ - application/json
14
+ User-Agent:
15
+ - Braze Ruby gem v0.3.3
16
+ Authorization:
17
+ - Bearer non-existent
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ response:
21
+ status:
22
+ code: 401
23
+ message: Unauthorized
24
+ headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '69'
29
+ Cache-Control:
30
+ - no-cache
31
+ Content-Type:
32
+ - application/json
33
+ Server:
34
+ - nginx
35
+ Strict-Transport-Security:
36
+ - max-age=0; includeSubDomains
37
+ X-Ratelimit-Limit:
38
+ - ''
39
+ X-Ratelimit-Remaining:
40
+ - ''
41
+ X-Ratelimit-Reset:
42
+ - ''
43
+ X-Request-Id:
44
+ - 004f6dde-0f46-4aeb-b709-fc6481536807
45
+ X-Runtime:
46
+ - '0.001028'
47
+ Accept-Ranges:
48
+ - bytes
49
+ Date:
50
+ - Wed, 17 Jun 2020 20:30:16 GMT
51
+ Via:
52
+ - 1.1 varnish
53
+ X-Served-By:
54
+ - cache-hhn4046-HHN
55
+ X-Cache:
56
+ - MISS
57
+ X-Cache-Hits:
58
+ - '0'
59
+ X-Timer:
60
+ - S1592425816.333073,VS0,VE4
61
+ Vary:
62
+ - Origin,Accept-Encoding
63
+ body:
64
+ encoding: ASCII-8BIT
65
+ string: '{"message":"Invalid API key: non-existent"}'
66
+ http_version:
67
+ recorded_at: Wed, 17 Jun 2020 20:30:16 GMT
68
+ recorded_with: VCR 5.0.0
@@ -0,0 +1,71 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: "<BRAZE_REST_URL>/users/identify"
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"aliases_to_identify":[{"external_id":12345,"user_alias":{"alias_name":"abc","alias_label":"foo"}}]}'
9
+ headers:
10
+ Content-Type:
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>
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ response:
21
+ status:
22
+ code: 201
23
+ message: Created
24
+ headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '66'
29
+ Cache-Control:
30
+ - max-age=0, private, must-revalidate
31
+ Content-Type:
32
+ - application/json
33
+ Etag:
34
+ - W/"da612bda0a786bcb949da037e296a092"
35
+ Server:
36
+ - nginx
37
+ Strict-Transport-Security:
38
+ - max-age=0; includeSubDomains
39
+ - max-age=31536000; includeSubDomains
40
+ X-Ratelimit-Limit:
41
+ - '250000'
42
+ X-Ratelimit-Remaining:
43
+ - '249982'
44
+ X-Ratelimit-Reset:
45
+ - '1592427600'
46
+ X-Request-Id:
47
+ - d0f2ec14-ad20-4ec1-8c98-e082ba1a29a7
48
+ X-Runtime:
49
+ - '0.007261'
50
+ Accept-Ranges:
51
+ - bytes
52
+ Date:
53
+ - Wed, 17 Jun 2020 20:30:11 GMT
54
+ Via:
55
+ - 1.1 varnish
56
+ X-Served-By:
57
+ - cache-hhn4027-HHN
58
+ X-Cache:
59
+ - MISS
60
+ X-Cache-Hits:
61
+ - '0'
62
+ X-Timer:
63
+ - S1592425811.496339,VS0,VE10
64
+ Vary:
65
+ - Origin,Accept-Encoding
66
+ body:
67
+ encoding: ASCII-8BIT
68
+ string: '{"aliases_processed":1,"message":"success"}'
69
+ http_version:
70
+ recorded_at: Wed, 17 Jun 2020 20:30:11 GMT
71
+ recorded_with: VCR 5.0.0
@@ -0,0 +1,71 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: "<BRAZE_REST_URL>/users/identify"
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"aliases_to_identify":[{"external_id":12345,"user_alias":{"alias_name":"abc","alias_label":"foo"}}]}'
9
+ headers:
10
+ Content-Type:
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>
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ response:
21
+ status:
22
+ code: 201
23
+ message: Created
24
+ headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '66'
29
+ Cache-Control:
30
+ - max-age=0, private, must-revalidate
31
+ Content-Type:
32
+ - application/json
33
+ Etag:
34
+ - W/"da612bda0a786bcb949da037e296a092"
35
+ Server:
36
+ - nginx
37
+ Strict-Transport-Security:
38
+ - max-age=0; includeSubDomains
39
+ - max-age=31536000; includeSubDomains
40
+ X-Ratelimit-Limit:
41
+ - '250000'
42
+ X-Ratelimit-Remaining:
43
+ - '249981'
44
+ X-Ratelimit-Reset:
45
+ - '1592427600'
46
+ X-Request-Id:
47
+ - 3e3620bf-17ee-4cb6-9bcf-252339f664e2
48
+ X-Runtime:
49
+ - '0.005803'
50
+ Accept-Ranges:
51
+ - bytes
52
+ Date:
53
+ - Wed, 17 Jun 2020 20:30:16 GMT
54
+ Via:
55
+ - 1.1 varnish
56
+ X-Served-By:
57
+ - cache-hhn4021-HHN
58
+ X-Cache:
59
+ - MISS
60
+ X-Cache-Hits:
61
+ - '0'
62
+ X-Timer:
63
+ - S1592425816.221760,VS0,VE9
64
+ Vary:
65
+ - Origin,Accept-Encoding
66
+ body:
67
+ encoding: ASCII-8BIT
68
+ string: '{"aliases_processed":1,"message":"success"}'
69
+ http_version:
70
+ recorded_at: Wed, 17 Jun 2020 20:30:16 GMT
71
+ recorded_with: VCR 5.0.0
@@ -2,80 +2,80 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: "<BRAZE_REST_URL>/segments/list?api_key=<BRAZE_REST_API_KEY>"
5
+ uri: "<BRAZE_REST_URL>/segments/list"
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
+ Content-Type:
11
+ - application/json
12
+ Accept:
13
+ - application/json
10
14
  User-Agent:
11
- - Faraday v0.14.0
15
+ - Braze Ruby gem v0.3.3
16
+ Authorization:
17
+ - Bearer <BRAZE_REST_API_KEY>
12
18
  Accept-Encoding:
13
19
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
- Accept:
15
- - "*/*"
16
20
  response:
17
21
  status:
18
22
  code: 200
19
23
  message: OK
20
24
  headers:
25
+ Connection:
26
+ - keep-alive
27
+ Content-Length:
28
+ - '373'
21
29
  Cache-Control:
22
30
  - max-age=0, private, must-revalidate
23
31
  Content-Type:
24
32
  - application/json
25
33
  Etag:
26
- - W/"f82a7689f0f1df180510d033adeece51"
34
+ - W/"de13291b9300bcefd33634ff4545a157"
27
35
  Server:
28
36
  - nginx
29
37
  Strict-Transport-Security:
30
38
  - max-age=0; includeSubDomains
31
39
  - max-age=31536000; includeSubDomains
32
40
  X-Ratelimit-Limit:
33
- - '50000'
41
+ - '250000'
34
42
  X-Ratelimit-Remaining:
35
- - '49992'
43
+ - '249938'
36
44
  X-Ratelimit-Reset:
37
- - '1524002400'
45
+ - '1592427600'
38
46
  X-Request-Id:
39
- - a399cc89-0854-471e-aba3-71f3a79a4f47
47
+ - 8768b6f0-071c-44f0-b09e-eb14bdebfa54
40
48
  X-Runtime:
41
- - '0.017686'
42
- Content-Length:
43
- - '603'
49
+ - '0.011164'
44
50
  Accept-Ranges:
45
51
  - bytes
52
+ - bytes
53
+ Age:
54
+ - '0'
55
+ - '0'
46
56
  Date:
47
- - Tue, 17 Apr 2018 21:08:20 GMT
57
+ - Wed, 17 Jun 2020 20:57:03 GMT
48
58
  Via:
49
59
  - 1.1 varnish
50
- Age:
51
- - '0'
52
- Connection:
53
- - keep-alive
54
60
  X-Served-By:
55
- - cache-pdk17835-PDK
61
+ - cache-hhn4066-HHN
56
62
  X-Cache:
57
63
  - MISS
58
64
  X-Cache-Hits:
59
65
  - '0'
60
66
  X-Timer:
61
- - S1523999301.931262,VS0,VE59
67
+ - S1592427424.534728,VS0,VE14
62
68
  Vary:
63
- - Accept-Encoding
69
+ - Origin,Accept-Encoding
64
70
  body:
65
71
  encoding: ASCII-8BIT
66
- string: '{"segments":[{"id":"e094130b-8b90-4b01-a004-f2b25281564f","name":"Lapsed
67
- Users - 7 days","analytics_tracking_enabled":true,"tags":[]},{"id":"f77809b7-dda4-45ee-bcf4-46de5c58a0a2","name":"Lapsed
68
- Users - 30 days","analytics_tracking_enabled":true,"tags":[]},{"id":"61227661-f46e-4ab6-bbc9-e4d5f65f8dbc","name":"User
69
- Onboarding - First Week","analytics_tracking_enabled":true,"tags":[]},{"id":"0ccb0f97-b09c-4d0f-bc33-8c695c6eedf2","name":"User
70
- Onboarding - Second Week","analytics_tracking_enabled":true,"tags":[]},{"id":"f522dea9-d27c-48b9-8e98-c03b3346e4b4","name":"Engaged
71
- Recent Users","analytics_tracking_enabled":true,"tags":[]},{"id":"658307d8-3b8a-45fa-98ad-97fb75ee6eff","name":"All
72
- Users (Takl Staging - iOS)","analytics_tracking_enabled":true,"tags":[]},{"id":"d04aa317-a6f4-459d-b7c0-2b1cab68cb88","name":"All
73
- Users (Takl Staging - Android)","analytics_tracking_enabled":true,"tags":[]},{"id":"e2ff24e9-0d5d-4b50-8832-a4201b1d59a3","name":"All
74
- Users (Takl Staging Debug - Android)","analytics_tracking_enabled":true,"tags":[]},{"id":"3de3ddbf-a327-408b-aab4-6bd390a6409e","name":"All
75
- Users (Takl Staging - Web)","analytics_tracking_enabled":true,"tags":[]},{"id":"b109727d-4773-4cdf-b6c7-43385aa9ccb2","name":"Everybody","analytics_tracking_enabled":false,"tags":[]},{"id":"ef0a9a5e-c0be-41a0-9260-2718dfbe28d4","name":"Custom
76
- Event Segment","analytics_tracking_enabled":false,"tags":[]},{"id":"7a337f50-4e79-46f6-b8b2-2459027e9aca","name":"Morgans
77
- Segment","analytics_tracking_enabled":false,"tags":[]},{"id":"a8fde797-4c44-4406-8e6c-5850d323f169","name":"Justin''s
78
- Segment","analytics_tracking_enabled":false,"tags":[]}],"message":"success"}'
72
+ string: '{"segments":[{"id":"6d68ea15-26c4-4109-835a-65b81773a5e2","name":"Lapsed
73
+ Users - 7 days","analytics_tracking_enabled":true,"tags":[]},{"id":"0eaf8f6a-230f-48f2-9c01-45302b642a35","name":"Lapsed
74
+ Users - 30 days","analytics_tracking_enabled":true,"tags":[]},{"id":"b644b893-276d-4817-b5cd-5f65906f072b","name":"User
75
+ Onboarding - First Week","analytics_tracking_enabled":true,"tags":[]},{"id":"2f59d81c-82b3-40e5-9050-b6400a1fc9c8","name":"User
76
+ Onboarding - Second Week","analytics_tracking_enabled":true,"tags":[]},{"id":"de83cb66-cc1f-457d-8905-45446b6e841b","name":"Engaged
77
+ Recent Users","analytics_tracking_enabled":true,"tags":[]},{"id":"3aca937b-9bbc-4e42-9370-05e411967b2b","name":"All
78
+ Users (Freeletics Development - iOS)","analytics_tracking_enabled":true,"tags":[]}],"message":"success"}'
79
79
  http_version:
80
- recorded_at: Tue, 17 Apr 2018 21:08:20 GMT
81
- recorded_with: VCR 4.0.0
80
+ recorded_at: Wed, 17 Jun 2020 20:57:03 GMT
81
+ recorded_with: VCR 5.0.0