braze_ruby 0.3.2 → 0.5.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 (117) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +57 -0
  3. data/.circleci/gem_credentials +2 -0
  4. data/.circleci/setup-rubygems +6 -0
  5. data/.gitignore +12 -19
  6. data/.standard.yml +1 -0
  7. data/Gemfile +1 -2
  8. data/LICENSE.txt +17 -18
  9. data/README.md +49 -2
  10. data/Rakefile +2 -1
  11. data/bin/release +16 -0
  12. data/braze_ruby.gemspec +28 -31
  13. data/lib/braze_ruby.rb +4 -4
  14. data/lib/braze_ruby/api.rb +20 -14
  15. data/lib/braze_ruby/deprecated.rb +4 -4
  16. data/lib/braze_ruby/endpoints.rb +10 -7
  17. data/lib/braze_ruby/endpoints/campaigns.rb +1 -1
  18. data/lib/braze_ruby/endpoints/canvas.rb +2 -2
  19. data/lib/braze_ruby/endpoints/create_user_aliases.rb +19 -0
  20. data/lib/braze_ruby/endpoints/delete_users.rb +2 -2
  21. data/lib/braze_ruby/endpoints/email_status.rb +1 -1
  22. data/lib/braze_ruby/endpoints/email_sync.rb +2 -2
  23. data/lib/braze_ruby/endpoints/identify_users.rb +2 -2
  24. data/lib/braze_ruby/endpoints/remove_external_ids.rb +19 -0
  25. data/lib/braze_ruby/endpoints/rename_external_ids.rb +19 -0
  26. data/lib/braze_ruby/endpoints/schedule_messages.rb +1 -1
  27. data/lib/braze_ruby/endpoints/send_messages.rb +1 -1
  28. data/lib/braze_ruby/endpoints/subscription.rb +3 -4
  29. data/lib/braze_ruby/endpoints/track_users.rb +5 -5
  30. data/lib/braze_ruby/http.rb +21 -8
  31. data/lib/braze_ruby/rest.rb +20 -17
  32. data/lib/braze_ruby/rest/base.rb +5 -3
  33. data/lib/braze_ruby/rest/canvas_details.rb +4 -6
  34. data/lib/braze_ruby/rest/create_user_aliases.rb +13 -0
  35. data/lib/braze_ruby/rest/delete_users.rb +3 -4
  36. data/lib/braze_ruby/rest/email_hard_bounces.rb +4 -6
  37. data/lib/braze_ruby/rest/email_status.rb +6 -8
  38. data/lib/braze_ruby/rest/email_unsubscribes.rb +4 -6
  39. data/lib/braze_ruby/rest/export_users.rb +9 -11
  40. data/lib/braze_ruby/rest/identify_users.rb +3 -4
  41. data/lib/braze_ruby/rest/list_segments.rb +2 -4
  42. data/lib/braze_ruby/rest/remove_external_ids.rb +13 -0
  43. data/lib/braze_ruby/rest/rename_external_ids.rb +13 -0
  44. data/lib/braze_ruby/rest/schedule_messages.rb +9 -11
  45. data/lib/braze_ruby/rest/send_messages.rb +6 -8
  46. data/lib/braze_ruby/rest/subscription_status_get.rb +4 -6
  47. data/lib/braze_ruby/rest/subscription_status_set.rb +4 -6
  48. data/lib/braze_ruby/rest/subscription_user_status.rb +4 -6
  49. data/lib/braze_ruby/rest/track_users.rb +5 -6
  50. data/lib/braze_ruby/rest/trigger_campaign_send.rb +4 -8
  51. data/lib/braze_ruby/rest/trigger_canvas_send.rb +4 -6
  52. data/lib/braze_ruby/version.rb +1 -1
  53. metadata +61 -175
  54. data/.github/workflows/ci.yml +0 -19
  55. data/Gemfile.lock +0 -78
  56. data/spec/braze_ruby/api_spec.rb +0 -6
  57. data/spec/braze_ruby/endpoints/delete_users_spec.rb +0 -31
  58. data/spec/braze_ruby/endpoints/track_users_spec.rb +0 -74
  59. data/spec/braze_ruby/rest/delete_users_spec.rb +0 -22
  60. data/spec/braze_ruby/rest/email_status_spec.rb +0 -21
  61. data/spec/braze_ruby/rest/export_users_spec.rb +0 -21
  62. data/spec/braze_ruby/rest/identify_users_spec.rb +0 -23
  63. data/spec/braze_ruby/rest/schedule_messages_spec.rb +0 -38
  64. data/spec/braze_ruby/rest/send_messages_spec.rb +0 -35
  65. data/spec/braze_ruby/rest/track_users_spec.rb +0 -26
  66. data/spec/factories.rb +0 -38
  67. data/spec/fixtures/responses/campaigns/trigger_send/sends_an_email.yml +0 -69
  68. data/spec/fixtures/responses/canvas/details/returns_error_when_no_canvas.yml +0 -67
  69. data/spec/fixtures/responses/canvas/trigger_send/sends_a_canvas.yml +0 -69
  70. data/spec/fixtures/responses/delete_users/unauthorized/responds_with_unauthorized.yml +0 -66
  71. data/spec/fixtures/responses/delete_users/with_success/responds_with_created.yml +0 -69
  72. data/spec/fixtures/responses/delete_users/with_success/responds_with_success_message.yml +0 -69
  73. data/spec/fixtures/responses/email_status/existing_email/responds_with_created.yml +0 -69
  74. data/spec/fixtures/responses/email_status/existing_email/responds_with_success_message.yml +0 -69
  75. data/spec/fixtures/responses/email_status/unknown_email/responds_with_bad_request.yml +0 -69
  76. data/spec/fixtures/responses/email_status/unknown_email/responds_with_success_message.yml +0 -69
  77. data/spec/fixtures/responses/email_sync/hard_bounces/responds_with_empty_array_when_no_hard_bounces.yml +0 -73
  78. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_empty_array_when_no_unsubscribes.yml +0 -73
  79. data/spec/fixtures/responses/email_sync/unsubscribes/responds_with_unsubscribed_emails.yml +0 -74
  80. data/spec/fixtures/responses/export_users/by_ids/with_success/responds_with_created.yml +0 -69
  81. data/spec/fixtures/responses/export_users/by_segment/with_success/responds_with_created.yml +0 -69
  82. data/spec/fixtures/responses/identify_users/unauthorized/responds_with_unauthorized.yml +0 -66
  83. data/spec/fixtures/responses/identify_users/with_success/responds_with_created.yml +0 -69
  84. data/spec/fixtures/responses/identify_users/with_success/responds_with_success_message.yml +0 -69
  85. data/spec/fixtures/responses/list_segments/with_success/responds_with_a_list_of_segments.yml +0 -81
  86. data/spec/fixtures/responses/list_segments/with_success/responds_with_success.yml +0 -81
  87. data/spec/fixtures/responses/schedule_messages/unauthorized/responds_with_unauthorize.yml +0 -67
  88. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_created.yml +0 -70
  89. data/spec/fixtures/responses/schedule_messages/with_success/responds_with_success_message.yml +0 -70
  90. data/spec/fixtures/responses/send_messages/unauthorized/responds_with_unauthorized.yml +0 -66
  91. data/spec/fixtures/responses/send_messages/with_success/responds_with_created.yml +0 -69
  92. data/spec/fixtures/responses/send_messages/with_success/responds_with_success_message.yml +0 -69
  93. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscribing/subscribes_the_user.yml +0 -69
  94. data/spec/fixtures/responses/subscription/subscription_status_set/when_subscription_group_does_not_exist/returns_an_error_status.yml +0 -66
  95. data/spec/fixtures/responses/subscription/subscription_status_set/when_unsubscribing/unsubscribes_the_user.yml +0 -135
  96. 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 +0 -205
  97. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_status_get/when_group_does_not_exist/returns_an_error.yml +0 -193
  98. data/spec/fixtures/responses/subscription/when_getting_subscription_group_statuses/subscription_user_status/returns_subscription_groups_and_status_for_every_group.yml +0 -207
  99. data/spec/fixtures/responses/track_users/unauthorized/responds_with_unauthorized.yml +0 -68
  100. data/spec/fixtures/responses/track_users/with_success/responds_with_created.yml +0 -71
  101. data/spec/fixtures/responses/track_users/with_success/responds_with_success_message.yml +0 -71
  102. data/spec/integrations/campaigns_spec.rb +0 -17
  103. data/spec/integrations/canvas_spec.rb +0 -26
  104. data/spec/integrations/delete_users_spec.rb +0 -31
  105. data/spec/integrations/email_status_spec.rb +0 -38
  106. data/spec/integrations/email_sync_spec.rb +0 -31
  107. data/spec/integrations/export_users_spec.rb +0 -29
  108. data/spec/integrations/identify_users_spec.rb +0 -32
  109. data/spec/integrations/list_segments_spec.rb +0 -21
  110. data/spec/integrations/schedule_messages_spec.rb +0 -33
  111. data/spec/integrations/send_messages_spec.rb +0 -32
  112. data/spec/integrations/subscription_spec.rb +0 -149
  113. data/spec/integrations/track_users_spec.rb +0 -37
  114. data/spec/spec_helper.rb +0 -33
  115. data/spec/support/factory_bot.rb +0 -12
  116. data/spec/support/integrations.rb +0 -23
  117. data/spec/support/vcr.rb +0 -18
@@ -1,69 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: "<BRAZE_REST_URL>/campaigns/trigger/send"
6
- body:
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"}}]}'
9
- headers:
10
- Content-Type:
11
- - application/json
12
- Accept:
13
- - application/json
14
- User-Agent:
15
- - Braze Ruby gem v0.2.0
16
- Accept-Encoding:
17
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
- response:
19
- status:
20
- code: 201
21
- message: Created
22
- headers:
23
- Cache-Control:
24
- - max-age=0, private, must-revalidate
25
- Content-Type:
26
- - application/json
27
- Etag:
28
- - W/"838a7c62adda8d131d694ae13ba2c5b7"
29
- Server:
30
- - nginx
31
- Strict-Transport-Security:
32
- - max-age=0; includeSubDomains
33
- - max-age=31536000; includeSubDomains
34
- X-Ratelimit-Limit:
35
- - '250000'
36
- X-Ratelimit-Remaining:
37
- - '249998'
38
- X-Ratelimit-Reset:
39
- - '1567425600'
40
- X-Request-Id:
41
- - e6f14e03-5226-45f3-9a9f-901a0139b071
42
- X-Runtime:
43
- - '0.019114'
44
- Content-Length:
45
- - '46'
46
- Accept-Ranges:
47
- - bytes
48
- Date:
49
- - Mon, 02 Sep 2019 11:41:42 GMT
50
- Via:
51
- - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
- X-Served-By:
55
- - cache-hhn4029-HHN
56
- X-Cache:
57
- - MISS
58
- X-Cache-Hits:
59
- - '0'
60
- X-Timer:
61
- - S1567424502.370259,VS0,VE27
62
- Vary:
63
- - Origin,Accept-Encoding
64
- body:
65
- encoding: ASCII-8BIT
66
- string: '{"message":"success"}'
67
- http_version:
68
- recorded_at: Mon, 02 Sep 2019 11:41:42 GMT
69
- recorded_with: VCR 5.0.0
@@ -1,67 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: "<BRAZE_REST_URL>/canvas/details?api_key=<BRAZE_REST_API_KEY>&canvas_id=non-existing"
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Content-Type:
11
- - application/json
12
- Accept:
13
- - application/json
14
- User-Agent:
15
- - Braze Ruby gem v0.2.2
16
- Accept-Encoding:
17
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
- response:
19
- status:
20
- code: 400
21
- message: Bad Request
22
- headers:
23
- Cache-Control:
24
- - no-cache
25
- Content-Type:
26
- - application/json
27
- Server:
28
- - nginx
29
- Strict-Transport-Security:
30
- - max-age=0; includeSubDomains
31
- X-Ratelimit-Limit:
32
- - '250000'
33
- X-Ratelimit-Remaining:
34
- - '249999'
35
- X-Ratelimit-Reset:
36
- - '1569931200'
37
- X-Request-Id:
38
- - ef7a2c66-9020-4973-a76c-87ce14f2f266
39
- X-Runtime:
40
- - '0.016301'
41
- Accept-Ranges:
42
- - bytes
43
- - bytes
44
- Content-Length:
45
- - '90'
46
- Date:
47
- - Tue, 01 Oct 2019 11:36:37 GMT
48
- Via:
49
- - 1.1 varnish
50
- Connection:
51
- - keep-alive
52
- X-Served-By:
53
- - cache-hhn4066-HHN
54
- X-Cache:
55
- - MISS
56
- X-Cache-Hits:
57
- - '0'
58
- X-Timer:
59
- - S1569929798.919907,VS0,VE19
60
- Vary:
61
- - Origin,Accept-Encoding
62
- body:
63
- encoding: ASCII-8BIT
64
- string: '{"message":"canvas_id must be a string of the Canvas api identifier"}'
65
- http_version:
66
- recorded_at: Tue, 01 Oct 2019 11:36:37 GMT
67
- recorded_with: VCR 5.0.0
@@ -1,69 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: "<BRAZE_REST_URL>/canvas/trigger/send"
6
- body:
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"}}]}'
9
- headers:
10
- Content-Type:
11
- - application/json
12
- Accept:
13
- - application/json
14
- User-Agent:
15
- - Braze Ruby gem v0.2.1
16
- Accept-Encoding:
17
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
- response:
19
- status:
20
- code: 201
21
- message: Created
22
- headers:
23
- Cache-Control:
24
- - max-age=0, private, must-revalidate
25
- Content-Type:
26
- - application/json
27
- Etag:
28
- - W/"fe0b7fad99d691854e76da70f1fcfff9"
29
- Server:
30
- - nginx
31
- Strict-Transport-Security:
32
- - max-age=0; includeSubDomains
33
- - max-age=31536000; includeSubDomains
34
- X-Ratelimit-Limit:
35
- - '250000'
36
- X-Ratelimit-Remaining:
37
- - '249998'
38
- X-Ratelimit-Reset:
39
- - '1569409200'
40
- X-Request-Id:
41
- - 768c83db-2694-4267-b21c-d070cb4a1828
42
- X-Runtime:
43
- - '0.023062'
44
- Content-Length:
45
- - '94'
46
- Accept-Ranges:
47
- - bytes
48
- Date:
49
- - Wed, 25 Sep 2019 10:36:45 GMT
50
- Via:
51
- - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
- X-Served-By:
55
- - cache-fra19174-FRA
56
- X-Cache:
57
- - MISS
58
- X-Cache-Hits:
59
- - '0'
60
- X-Timer:
61
- - S1569407805.340414,VS0,VE71
62
- Vary:
63
- - Origin,Accept-Encoding
64
- body:
65
- encoding: ASCII-8BIT
66
- string: '{"dispatch_id":"0bda43218769391588ee304c36fafb03","message":"success"}'
67
- http_version:
68
- recorded_at: Wed, 25 Sep 2019 10:36:45 GMT
69
- recorded_with: VCR 5.0.0
@@ -1,66 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: "<BRAZE_REST_URL>/users/delete"
6
- body:
7
- encoding: UTF-8
8
- string: '{"api_key":"non-existent","external_ids":[400,401,402]}'
9
- headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
- Content-Type:
13
- - application/json
14
- Accept-Encoding:
15
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
- response:
19
- status:
20
- code: 401
21
- message: Unauthorized
22
- headers:
23
- Cache-Control:
24
- - no-cache
25
- Content-Type:
26
- - application/json
27
- Server:
28
- - nginx
29
- Strict-Transport-Security:
30
- - max-age=0; includeSubDomains
31
- X-Ratelimit-Limit:
32
- - ''
33
- X-Ratelimit-Remaining:
34
- - ''
35
- X-Ratelimit-Reset:
36
- - ''
37
- X-Request-Id:
38
- - bd4c1e19-8065-4db0-b5e5-aaafcb40ef9d
39
- X-Runtime:
40
- - '0.011342'
41
- Content-Length:
42
- - '85'
43
- Accept-Ranges:
44
- - bytes
45
- Date:
46
- - Fri, 18 May 2018 18:54:32 GMT
47
- Via:
48
- - 1.1 varnish
49
- Connection:
50
- - keep-alive
51
- X-Served-By:
52
- - cache-pdk17824-PDK
53
- X-Cache:
54
- - MISS
55
- X-Cache-Hits:
56
- - '0'
57
- X-Timer:
58
- - S1526669672.332248,VS0,VE196
59
- Vary:
60
- - Accept-Encoding
61
- body:
62
- encoding: ASCII-8BIT
63
- string: '{"message":"Invalid App Group API Identifier: non-existent"}'
64
- http_version:
65
- recorded_at: Fri, 18 May 2018 18:54:14 GMT
66
- recorded_with: VCR 4.0.0
@@ -1,69 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: "<BRAZE_REST_URL>/users/delete"
6
- body:
7
- encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","external_ids":[400,401,402]}'
9
- headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
- Content-Type:
13
- - application/json
14
- Accept-Encoding:
15
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
- response:
19
- status:
20
- code: 201
21
- message: Created
22
- headers:
23
- Cache-Control:
24
- - max-age=0, private, must-revalidate
25
- Content-Type:
26
- - application/json
27
- Etag:
28
- - W/"383e14c9bc8f36ee9f92221ad86557aa"
29
- Server:
30
- - nginx
31
- Strict-Transport-Security:
32
- - max-age=0; includeSubDomains
33
- - max-age=31536000; includeSubDomains
34
- X-Ratelimit-Limit:
35
- - '50000'
36
- X-Ratelimit-Remaining:
37
- - '49988'
38
- X-Ratelimit-Reset:
39
- - '1526670000'
40
- X-Request-Id:
41
- - 3c706f21-aef5-4527-ab35-ded3437dbb58
42
- X-Runtime:
43
- - '0.019468'
44
- Content-Length:
45
- - '89'
46
- Accept-Ranges:
47
- - bytes
48
- Date:
49
- - Fri, 18 May 2018 18:54:31 GMT
50
- Via:
51
- - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
- X-Served-By:
55
- - cache-atl6224-ATL
56
- X-Cache:
57
- - MISS
58
- X-Cache-Hits:
59
- - '0'
60
- X-Timer:
61
- - S1526669672.735390,VS0,VE223
62
- Vary:
63
- - Accept-Encoding
64
- body:
65
- 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
@@ -1,69 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: "<BRAZE_REST_URL>/users/delete"
6
- body:
7
- encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","external_ids":[400,401,402]}'
9
- headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
- Content-Type:
13
- - application/json
14
- Accept-Encoding:
15
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
- response:
19
- status:
20
- code: 201
21
- message: Created
22
- headers:
23
- Cache-Control:
24
- - max-age=0, private, must-revalidate
25
- Content-Type:
26
- - application/json
27
- Etag:
28
- - W/"05c5a9339e57ae2f67e0aeb4404dbe22"
29
- Server:
30
- - nginx
31
- Strict-Transport-Security:
32
- - max-age=0; includeSubDomains
33
- - max-age=31536000; includeSubDomains
34
- X-Ratelimit-Limit:
35
- - '50000'
36
- X-Ratelimit-Remaining:
37
- - '49987'
38
- X-Ratelimit-Reset:
39
- - '1526670000'
40
- X-Request-Id:
41
- - 51543cb0-651c-49ea-aaba-ca8350e763bd
42
- X-Runtime:
43
- - '0.011310'
44
- Content-Length:
45
- - '89'
46
- Accept-Ranges:
47
- - bytes
48
- Date:
49
- - Fri, 18 May 2018 18:54:32 GMT
50
- Via:
51
- - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
- X-Served-By:
55
- - cache-atl6222-ATL
56
- X-Cache:
57
- - MISS
58
- X-Cache-Hits:
59
- - '0'
60
- X-Timer:
61
- - S1526669672.051288,VS0,VE215
62
- Vary:
63
- - Accept-Encoding
64
- body:
65
- encoding: ASCII-8BIT
66
- string: '{"invalid_user_ids":[400,401,402],"deleted":0,"message":"success"}'
67
- http_version:
68
- recorded_at: Fri, 18 May 2018 18:54:14 GMT
69
- recorded_with: VCR 4.0.0
@@ -1,69 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: "<BRAZE_REST_URL>/email/status"
6
- body:
7
- encoding: UTF-8
8
- string: '{"api_key":"<BRAZE_REST_API_KEY>","email":"john@example.com","subscription_state":"unsubscribed"}'
9
- headers:
10
- User-Agent:
11
- - Faraday v0.14.0
12
- Content-Type:
13
- - application/json
14
- Accept-Encoding:
15
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
- Accept:
17
- - "*/*"
18
- response:
19
- status:
20
- code: 201
21
- message: Created
22
- headers:
23
- Cache-Control:
24
- - max-age=0, private, must-revalidate
25
- Content-Type:
26
- - application/json
27
- Etag:
28
- - W/"838a7c62adda8d131d694ae13ba2c5b7"
29
- Server:
30
- - nginx
31
- Strict-Transport-Security:
32
- - max-age=0; includeSubDomains
33
- - max-age=31536000; includeSubDomains
34
- X-Ratelimit-Limit:
35
- - '50000'
36
- X-Ratelimit-Remaining:
37
- - '49999'
38
- X-Ratelimit-Reset:
39
- - '1524002400'
40
- X-Request-Id:
41
- - 24433bbb-89d6-4bd3-918f-46e7865d383e
42
- X-Runtime:
43
- - '0.034502'
44
- Content-Length:
45
- - '46'
46
- Accept-Ranges:
47
- - bytes
48
- Date:
49
- - Tue, 17 Apr 2018 21:08:19 GMT
50
- Via:
51
- - 1.1 varnish
52
- Connection:
53
- - keep-alive
54
- X-Served-By:
55
- - cache-pdk17830-PDK
56
- X-Cache:
57
- - MISS
58
- X-Cache-Hits:
59
- - '0'
60
- X-Timer:
61
- - S1523999299.770713,VS0,VE230
62
- Vary:
63
- - Accept-Encoding
64
- body:
65
- encoding: ASCII-8BIT
66
- string: '{"message":"success"}'
67
- http_version:
68
- recorded_at: Tue, 17 Apr 2018 21:08:19 GMT
69
- recorded_with: VCR 4.0.0