braze_ruby 0.3.3 → 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 (93) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +14 -3
  3. data/Gemfile.lock +38 -38
  4. data/braze_ruby.gemspec +6 -6
  5. data/lib/braze_ruby/api.rb +2 -2
  6. data/lib/braze_ruby/endpoints/campaigns.rb +1 -1
  7. data/lib/braze_ruby/endpoints/canvas.rb +2 -2
  8. data/lib/braze_ruby/endpoints/delete_users.rb +2 -2
  9. data/lib/braze_ruby/endpoints/email_status.rb +1 -1
  10. data/lib/braze_ruby/endpoints/email_sync.rb +2 -2
  11. data/lib/braze_ruby/endpoints/identify_users.rb +2 -2
  12. data/lib/braze_ruby/endpoints/schedule_messages.rb +1 -1
  13. data/lib/braze_ruby/endpoints/send_messages.rb +1 -1
  14. data/lib/braze_ruby/endpoints/subscription.rb +3 -3
  15. data/lib/braze_ruby/endpoints/track_users.rb +5 -5
  16. data/lib/braze_ruby/http.rb +8 -6
  17. data/lib/braze_ruby/rest/base.rb +4 -3
  18. data/lib/braze_ruby/rest/canvas_details.rb +2 -4
  19. data/lib/braze_ruby/rest/delete_users.rb +1 -2
  20. data/lib/braze_ruby/rest/email_hard_bounces.rb +2 -4
  21. data/lib/braze_ruby/rest/email_status.rb +2 -4
  22. data/lib/braze_ruby/rest/email_unsubscribes.rb +2 -4
  23. data/lib/braze_ruby/rest/export_users.rb +5 -7
  24. data/lib/braze_ruby/rest/identify_users.rb +2 -3
  25. data/lib/braze_ruby/rest/list_segments.rb +2 -4
  26. data/lib/braze_ruby/rest/schedule_messages.rb +2 -4
  27. data/lib/braze_ruby/rest/send_messages.rb +2 -4
  28. data/lib/braze_ruby/rest/subscription_status_get.rb +2 -4
  29. data/lib/braze_ruby/rest/subscription_status_set.rb +2 -4
  30. data/lib/braze_ruby/rest/subscription_user_status.rb +2 -4
  31. data/lib/braze_ruby/rest/track_users.rb +1 -2
  32. data/lib/braze_ruby/rest/trigger_campaign_send.rb +3 -7
  33. data/lib/braze_ruby/rest/trigger_canvas_send.rb +2 -4
  34. data/lib/braze_ruby/version.rb +1 -1
  35. data/spec/braze_ruby/endpoints/delete_users_spec.rb +1 -1
  36. data/spec/braze_ruby/endpoints/track_users_spec.rb +8 -8
  37. data/spec/braze_ruby/http_spec.rb +7 -4
  38. data/spec/braze_ruby/rest/delete_users_spec.rb +3 -3
  39. data/spec/braze_ruby/rest/email_status_spec.rb +0 -1
  40. data/spec/braze_ruby/rest/export_users_spec.rb +3 -3
  41. data/spec/braze_ruby/rest/identify_users_spec.rb +3 -3
  42. data/spec/braze_ruby/rest/schedule_messages_spec.rb +1 -2
  43. data/spec/braze_ruby/rest/send_messages_spec.rb +6 -13
  44. data/spec/braze_ruby/rest/track_users_spec.rb +10 -9
  45. data/spec/fixtures/responses/campaigns/trigger_send/sends_an_email.yml +17 -15
  46. data/spec/fixtures/responses/canvas/details/returns_error_when_no_canvas.yml +16 -14
  47. data/spec/fixtures/responses/canvas/trigger_send/sends_a_canvas.yml +18 -16
  48. data/spec/fixtures/responses/delete_users/unauthorized/responds_with_unauthorized.yml +20 -18
  49. data/spec/fixtures/responses/delete_users/with_success/responds_with_created.yml +25 -23
  50. data/spec/fixtures/responses/delete_users/with_success/responds_with_success_message.yml +25 -23
  51. data/spec/fixtures/responses/email_status/existing_email/responds_with_created.yml +22 -20
  52. data/spec/fixtures/responses/email_status/existing_email/responds_with_success_message.yml +22 -20
  53. data/spec/fixtures/responses/email_status/unknown_email/responds_with_bad_request.yml +22 -20
  54. data/spec/fixtures/responses/email_status/unknown_email/responds_with_success_message.yml +22 -20
  55. data/spec/fixtures/responses/email_sync/hard_bounces/responds_with_empty_array_when_no_hard_bounces.yml +18 -16
  56. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_empty_array_when_no_unsubscribes.yml +18 -16
  57. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_unsubscribed_emails.yml +21 -20
  58. data/spec/fixtures/responses/export_users/by_ids/with_success/responds_with_created.yml +25 -22
  59. data/spec/fixtures/responses/export_users/by_segment/with_success/responds_with_created.yml +24 -22
  60. data/spec/fixtures/responses/identify_users/unauthorized/responds_with_unauthorized.yml +10 -8
  61. data/spec/fixtures/responses/identify_users/with_success/responds_with_created.yml +12 -10
  62. data/spec/fixtures/responses/identify_users/with_success/responds_with_success_message.yml +12 -10
  63. data/spec/fixtures/responses/list_segments/with_success/responds_with_a_list_of_segments.yml +35 -35
  64. data/spec/fixtures/responses/list_segments/with_success/responds_with_success.yml +35 -35
  65. data/spec/fixtures/responses/schedule_messages/unauthorized/responds_with_unauthorize.yml +20 -19
  66. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_created.yml +24 -23
  67. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_success_message.yml +24 -23
  68. data/spec/fixtures/responses/send_messages/unauthorized/responds_with_unauthorized.yml +20 -18
  69. data/spec/fixtures/responses/send_messages/with_success/responds_with_created.yml +24 -22
  70. data/spec/fixtures/responses/send_messages/with_success/responds_with_success_message.yml +24 -22
  71. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscribing/subscribes_the_user.yml +16 -14
  72. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscription_group_does_not_exist/returns_an_error_status.yml +16 -14
  73. data/spec/fixtures/responses/subscription/subscription_status_set/when_unsubscribing/unsubscribes_the_user.yml +32 -28
  74. 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
  75. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_status_get/when_group_does_not_exist/returns_an_error.yml +48 -42
  76. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_user_status/returns_subscription_groups_and_status_for_every_group.yml +50 -46
  77. data/spec/fixtures/responses/track_users/unauthorized/responds_with_unauthorized.yml +23 -21
  78. data/spec/fixtures/responses/track_users/with_success/responds_with_created.yml +22 -20
  79. data/spec/fixtures/responses/track_users/with_success/responds_with_success_message.yml +22 -20
  80. data/spec/integrations/campaigns_spec.rb +4 -2
  81. data/spec/integrations/canvas_spec.rb +4 -2
  82. data/spec/integrations/delete_users_spec.rb +1 -0
  83. data/spec/integrations/email_sync_spec.rb +2 -2
  84. data/spec/integrations/export_users_spec.rb +2 -2
  85. data/spec/integrations/identify_users_spec.rb +1 -1
  86. data/spec/integrations/list_segments_spec.rb +1 -1
  87. data/spec/integrations/schedule_messages_spec.rb +2 -1
  88. data/spec/integrations/send_messages_spec.rb +2 -1
  89. data/spec/integrations/subscription_spec.rb +7 -7
  90. data/spec/integrations/track_users_spec.rb +1 -0
  91. data/spec/spec_helper.rb +0 -8
  92. data/spec/support/vcr.rb +3 -1
  93. metadata +15 -15
@@ -5,18 +5,12 @@ require 'spec_helper'
5
5
  describe BrazeRuby::REST::SendMessages do
6
6
  let(:http) { double(:http) }
7
7
 
8
- let(:payload) {{
9
- messages: :messages,
10
- external_user_ids: :external_user_ids,
11
- }}
12
-
13
- let(:api_key) { :api_key }
14
-
15
8
  subject { described_class.new(
16
- api_key,
9
+ :api_key,
10
+ :rest_url,
17
11
  {},
18
- messages: :messages,
19
- external_user_ids: :external_user_ids
12
+ messages: ["message"],
13
+ external_user_ids: ["1", "2"]
20
14
  ) }
21
15
 
22
16
  before { subject.http = http }
@@ -29,9 +23,8 @@ describe BrazeRuby::REST::SendMessages do
29
23
 
30
24
  def expect_send_messages_http_call
31
25
  expect(http).to receive(:post).with '/messages/send', {
32
- api_key: :api_key,
33
- messages: [],
34
- external_user_ids: [],
26
+ messages: ["message"],
27
+ external_user_ids: ["1", "2"],
35
28
  }
36
29
  end
37
30
  end
@@ -5,22 +5,23 @@ require 'spec_helper'
5
5
  describe BrazeRuby::REST::TrackUsers do
6
6
  let(:http) { double(:http) }
7
7
 
8
- let(:payload) {{
9
- attributes: :attributes,
10
- events: :events,
11
- purchases: :purchases
12
- }}
8
+ let(:payload) do
9
+ {
10
+ attributes: :attributes,
11
+ events: :events,
12
+ purchases: :purchases
13
+ }
14
+ end
13
15
 
14
16
  let(:api_key) { :api_key }
15
17
 
16
- subject { described_class.new :rest_url, {}}
18
+ subject { described_class.new :api_key, :rest_url, {}}
17
19
 
18
20
  before { subject.http = http }
19
21
 
20
22
  it 'makes an http call to the track user endpoint' do
21
- expect(http).to receive(:post).with '/users/track',
22
- payload.merge({ api_key: :api_key })
23
+ expect(http).to receive(:post).with '/users/track', payload
23
24
 
24
- subject.perform(api_key, payload)
25
+ subject.perform(**payload)
25
26
  end
26
27
  end
@@ -5,14 +5,16 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/campaigns/trigger/send"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","campaign_id":"69e9b681-779c-4b4c-b6b8-cd74b17d21d2","recipients":[{"external_user_id":132404,"trigger_properties":{"first_name":"John"}}]}'
8
+ string: '{"campaign_id":"d8b73da7-0b7c-fc72-1d80-e59c7f20f0d3","recipients":[{"external_user_id":12345,"trigger_properties":{"first_name":"John"}}]}'
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.0
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,12 +22,16 @@ http_interactions:
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/"b02a5788c87daf846d9cf451bf7f4e6d"
29
35
  Server:
30
36
  - nginx
31
37
  Strict-Transport-Security:
@@ -36,34 +42,30 @@ http_interactions:
36
42
  X-Ratelimit-Remaining:
37
43
  - '249998'
38
44
  X-Ratelimit-Reset:
39
- - '1567425600'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - e6f14e03-5226-45f3-9a9f-901a0139b071
47
+ - ab80a33e-db36-4fe9-af89-6ce274df5edc
42
48
  X-Runtime:
43
- - '0.019114'
44
- Content-Length:
45
- - '46'
49
+ - '0.016803'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Mon, 02 Sep 2019 11:41:42 GMT
53
+ - Wed, 17 Jun 2020 20:04:46 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-hhn4029-HHN
57
+ - cache-hhn4039-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1567424502.370259,VS0,VE27
63
+ - S1592424287.720589,VS0,VE19
62
64
  Vary:
63
65
  - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"message":"success"}'
68
+ string: '{"dispatch_id":"14497aa4b013bf150881547fb3076fd6","message":"success"}'
67
69
  http_version:
68
- recorded_at: Mon, 02 Sep 2019 11:41:42 GMT
70
+ recorded_at: Wed, 17 Jun 2020 20:04:46 GMT
69
71
  recorded_with: VCR 5.0.0
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: "<BRAZE_REST_URL>/canvas/details?api_key=<BRAZE_REST_API_KEY>&canvas_id=non-existing"
5
+ uri: "<BRAZE_REST_URL>/canvas/details?canvas_id=non-existing"
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
@@ -12,7 +12,9 @@ http_interactions:
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
+ - '90'
23
29
  Cache-Control:
24
30
  - no-cache
25
31
  Content-Type:
@@ -31,37 +37,33 @@ http_interactions:
31
37
  X-Ratelimit-Limit:
32
38
  - '250000'
33
39
  X-Ratelimit-Remaining:
34
- - '249999'
40
+ - '249996'
35
41
  X-Ratelimit-Reset:
36
- - '1569931200'
42
+ - '1592427600'
37
43
  X-Request-Id:
38
- - ef7a2c66-9020-4973-a76c-87ce14f2f266
44
+ - c034f03f-7a14-441a-8804-5ab472b339e5
39
45
  X-Runtime:
40
- - '0.016301'
46
+ - '0.036143'
41
47
  Accept-Ranges:
42
48
  - bytes
43
49
  - bytes
44
- Content-Length:
45
- - '90'
46
50
  Date:
47
- - Tue, 01 Oct 2019 11:36:37 GMT
51
+ - Wed, 17 Jun 2020 20:10:13 GMT
48
52
  Via:
49
53
  - 1.1 varnish
50
- Connection:
51
- - keep-alive
52
54
  X-Served-By:
53
- - cache-hhn4066-HHN
55
+ - cache-hhn4053-HHN
54
56
  X-Cache:
55
57
  - MISS
56
58
  X-Cache-Hits:
57
59
  - '0'
58
60
  X-Timer:
59
- - S1569929798.919907,VS0,VE19
61
+ - S1592424613.170617,VS0,VE40
60
62
  Vary:
61
63
  - Origin,Accept-Encoding
62
64
  body:
63
65
  encoding: ASCII-8BIT
64
66
  string: '{"message":"canvas_id must be a string of the Canvas api identifier"}'
65
67
  http_version:
66
- recorded_at: Tue, 01 Oct 2019 11:36:37 GMT
68
+ recorded_at: Wed, 17 Jun 2020 20:10:13 GMT
67
69
  recorded_with: VCR 5.0.0
@@ -5,14 +5,16 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/canvas/trigger/send"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","canvas_id":"dc23ade4-e970-0c52-81bc-b369f64f533d","recipients":[{"external_user_id":132404,"canvas_entry_properties":{"first_name":"John"}}]}'
8
+ string: '{"canvas_id":"70a7fb99-cbcb-451a-8224-5f8b8c63e03f","recipients":[{"external_user_id":12345,"canvas_entry_properties":{"first_name":"John"}}]}'
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.1
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,12 +22,16 @@ http_interactions:
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/"fe0b7fad99d691854e76da70f1fcfff9"
34
+ - W/"8095773a816c64baf32bfaed3bbc98c5"
29
35
  Server:
30
36
  - nginx
31
37
  Strict-Transport-Security:
@@ -34,36 +40,32 @@ http_interactions:
34
40
  X-Ratelimit-Limit:
35
41
  - '250000'
36
42
  X-Ratelimit-Remaining:
37
- - '249998'
43
+ - '249997'
38
44
  X-Ratelimit-Reset:
39
- - '1569409200'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - 768c83db-2694-4267-b21c-d070cb4a1828
47
+ - f1378a46-afca-42ec-bfdd-3c624a75bc6b
42
48
  X-Runtime:
43
- - '0.023062'
44
- Content-Length:
45
- - '94'
49
+ - '0.035689'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Wed, 25 Sep 2019 10:36:45 GMT
53
+ - Wed, 17 Jun 2020 20:08:51 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-fra19174-FRA
57
+ - cache-hhn4034-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1569407805.340414,VS0,VE71
63
+ - S1592424531.067560,VS0,VE38
62
64
  Vary:
63
65
  - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"dispatch_id":"0bda43218769391588ee304c36fafb03","message":"success"}'
68
+ string: '{"dispatch_id":"c249b5eaad19a96b85ce3afc83017e81","message":"success"}'
67
69
  http_version:
68
- recorded_at: Wed, 25 Sep 2019 10:36:45 GMT
70
+ recorded_at: Wed, 17 Jun 2020 20:08:51 GMT
69
71
  recorded_with: VCR 5.0.0
@@ -5,21 +5,27 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/delete"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"non-existent","external_ids":[400,401,402]}'
8
+ string: '{"external_ids":[400,401,402]}'
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
- - bd4c1e19-8065-4db0-b5e5-aaafcb40ef9d
44
+ - '0335584f-5add-47dd-9476-fecfe3ee350d'
39
45
  X-Runtime:
40
- - '0.011342'
41
- Content-Length:
42
- - '85'
46
+ - '0.001182'
43
47
  Accept-Ranges:
44
48
  - bytes
45
49
  Date:
46
- - Fri, 18 May 2018 18:54:32 GMT
50
+ - Wed, 17 Jun 2020 20:59:32 GMT
47
51
  Via:
48
52
  - 1.1 varnish
49
- Connection:
50
- - keep-alive
51
53
  X-Served-By:
52
- - cache-pdk17824-PDK
54
+ - cache-hhn4081-HHN
53
55
  X-Cache:
54
56
  - MISS
55
57
  X-Cache-Hits:
56
58
  - '0'
57
59
  X-Timer:
58
- - S1526669672.332248,VS0,VE196
60
+ - S1592427573.501246,VS0,VE4
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: Fri, 18 May 2018 18:54:14 GMT
66
- recorded_with: VCR 4.0.0
67
+ recorded_at: Wed, 17 Jun 2020 20:59:32 GMT
68
+ recorded_with: VCR 5.0.0
@@ -5,65 +5,67 @@ http_interactions:
5
5
  uri: "<BRAZE_REST_URL>/users/delete"
6
6
  body:
7
7
  encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","external_ids":[400,401,402]}'
8
+ string: '{"external_ids":[400,401,402]}'
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
+ - '58'
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/"383e14c9bc8f36ee9f92221ad86557aa"
34
+ - W/"9a22d0f53e9efcbef8e52c6a21060bc1"
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
+ - '249937'
38
44
  X-Ratelimit-Reset:
39
- - '1526670000'
45
+ - '1592427600'
40
46
  X-Request-Id:
41
- - 3c706f21-aef5-4527-ab35-ded3437dbb58
47
+ - dd8e1db7-bb0d-4e71-a14a-c4c5c9322f49
42
48
  X-Runtime:
43
- - '0.019468'
44
- Content-Length:
45
- - '89'
49
+ - '0.005861'
46
50
  Accept-Ranges:
47
51
  - bytes
48
52
  Date:
49
- - Fri, 18 May 2018 18:54:31 GMT
53
+ - Wed, 17 Jun 2020 20:59:32 GMT
50
54
  Via:
51
55
  - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
56
  X-Served-By:
55
- - cache-atl6224-ATL
57
+ - cache-hhn4035-HHN
56
58
  X-Cache:
57
59
  - MISS
58
60
  X-Cache-Hits:
59
61
  - '0'
60
62
  X-Timer:
61
- - S1526669672.735390,VS0,VE223
63
+ - S1592427572.293833,VS0,VE9
62
64
  Vary:
63
- - Accept-Encoding
65
+ - Origin,Accept-Encoding
64
66
  body:
65
67
  encoding: ASCII-8BIT
66
- string: '{"invalid_user_ids":[400,401,402],"deleted":3,"message":"success"}'
67
- http_version:
68
- recorded_at: Fri, 18 May 2018 18:54:13 GMT
69
- recorded_with: VCR 4.0.0
68
+ string: '{"deleted":3,"message":"success"}'
69
+ http_version:
70
+ recorded_at: Wed, 17 Jun 2020 20:59:32 GMT
71
+ recorded_with: VCR 5.0.0