reverb-api 0.1.6

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: c5e6876131827a82a33bfe9600ea869c817dafa1
4
+ data.tar.gz: 93fe15ef059b1c9b570b18180e7fca42c661f447
5
+ SHA512:
6
+ metadata.gz: cd21e3379b183c555f8df4f9d9ad0c630e7479764e2533ed1b3b7492e1233ea748686c7f86169d07529faed37c3142122a2507855bb1b249e8613ca2c3cf977d
7
+ data.tar.gz: fd2da0bce8ced981c94f4f934b9416a3fe3b675a3b43cf9dd0b7c78a86624ccc005b3ec3a7f2aa7116d5ae6f1ae346e9f0cf85a2e789e61e28b2df90abcdb2ef
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/.ruby-gemset ADDED
@@ -0,0 +1 @@
1
+ reverb-api
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ ruby-2.2.2
data/.travis.yml ADDED
@@ -0,0 +1,3 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.2.0
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in reverb-api.gemspec
4
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,13 @@
1
+ Copyright 2015 Reverb.com
2
+
3
+ Licensed under the Apache License, Version 2.0 (the "License");
4
+ you may not use this file except in compliance with the License.
5
+ You may obtain a copy of the License at
6
+
7
+ http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ Unless required by applicable law or agreed to in writing, software
10
+ distributed under the License is distributed on an "AS IS" BASIS,
11
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ See the License for the specific language governing permissions and
13
+ limitations under the License.
data/README.md ADDED
@@ -0,0 +1,49 @@
1
+ # Reverb::Api
2
+
3
+ An ruby gem to interact with the Reverb api.
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ ```ruby
10
+ gem 'reverb-api'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install reverb-api
20
+
21
+ ## Usage
22
+
23
+ The main object you will use is `Reverb::Api::Client`.
24
+
25
+ Right now this only implements `#authenticate`, `#create_listing`, and `#find_listing_by_sku`
26
+ methods along with general`#get`, `#post`, `#put`, and `#delete` methods where you specify
27
+ the path manually.
28
+
29
+ Examples:
30
+
31
+ client = Reverb::Api::Client.new(reverb_token: 'MY_TOKEN')
32
+
33
+ client.create_listing make: "Fender", model: "Precision Bass", sku: "THE_SKU"
34
+ client.find_listing_by_sku "THE_SKU"
35
+
36
+ ## Console
37
+
38
+ You can play with the API from a console
39
+
40
+ ```
41
+ script/console
42
+ > Reverb::Api::Client.new(reverb_token: "foo")
43
+ ```
44
+
45
+ ## Testing
46
+
47
+ The specs make real requests against Reverb's sandbox server which requires secret
48
+ usernames and passwords. As a result, you will likely not be able to run them locally.
49
+ Sorry.
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "rspec/core/rake_task"
2
+ require "bundler/gem_tasks"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :spec
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "reverb/api"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start
data/bin/setup ADDED
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+
5
+ bundle install
6
+
7
+ # Do any other automated setup that you need to do here
@@ -0,0 +1,54 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://sandbox.reverb.com/api/my/listings?sku=NOSKU&state=draft
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Content-Type:
11
+ - application/hal+json
12
+ Accept:
13
+ - application/hal+json
14
+ X-Auth-Token:
15
+ - mangled_token
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Access-Control-Allow-Credentials:
22
+ - 'true'
23
+ Access-Control-Allow-Origin:
24
+ - "*"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ Content-Type:
28
+ - application/hal+json
29
+ Date:
30
+ - Tue, 06 Oct 2015 18:22:27 GMT
31
+ Etag:
32
+ - '"a06787cca2914b8b79e87278465e0914"'
33
+ Server:
34
+ - nginx
35
+ Status:
36
+ - 200 OK
37
+ Vary:
38
+ - Accept-Version
39
+ X-Request-Id:
40
+ - b67d5708-9f69-4ed1-bbef-ca0b9e9a233e
41
+ X-Revision:
42
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
43
+ X-Runtime:
44
+ - '0.027471'
45
+ Content-Length:
46
+ - '37'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"total":0,"_links":{},"listings":[]}'
52
+ http_version:
53
+ recorded_at: Tue, 06 Oct 2015 18:22:27 GMT
54
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,54 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://sandbox.reverb.com/api/auth/email
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"email":"foobar@foobar.com","password":"foobar123"}'
9
+ headers:
10
+ Content-Type:
11
+ - application/hal+json
12
+ Accept:
13
+ - application/hal+json
14
+ X-Auth-Token:
15
+ - mangled_token
16
+ response:
17
+ status:
18
+ code: 201
19
+ message: Created
20
+ headers:
21
+ Access-Control-Allow-Credentials:
22
+ - 'true'
23
+ Access-Control-Allow-Origin:
24
+ - "*"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ Content-Type:
28
+ - application/hal+json
29
+ Date:
30
+ - Tue, 06 Oct 2015 18:18:23 GMT
31
+ Etag:
32
+ - '"b34bc4dddf3122c360f72cd56434d159"'
33
+ Server:
34
+ - nginx
35
+ Status:
36
+ - 201 Created
37
+ Vary:
38
+ - Accept-Version
39
+ X-Request-Id:
40
+ - a5dc79f9-beb0-40be-b3e8-cfc543e12583
41
+ X-Revision:
42
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
43
+ X-Runtime:
44
+ - '0.148926'
45
+ Content-Length:
46
+ - '2161'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"_links":{"accounts":{"href":"/api/accounts"},"auth_email":{"href":"/api/auth/email"},"auth_facebook":{"href":"/api/auth/facebook"},"auth":{"forgot_password":{"href":"/api/auth/forgot_password"},"logout":{"href":"/api/auth/logout"}},"autocomplete":{"href":"/api/autocomplete"},"autosuggest":{"href":"/api/autosuggest"},"braintree":{"client_token":{"href":"/api/braintree/client_token"}},"collections":{"href":"/api/collections"},"categories":{"href":"/api/categories"},"listings":{"href":"/api/listings"},"price_guides":{"href":"/api/priceguide"},"my":{"requires_login":true,"account":{"href":"/api/my/account"},"counts":{"href":"/api/my/counts"},"feed":{"href":"/api/my/feed"},"feedback":{"sent":{"href":"/api/my/feedback/sent"},"received":{"href":"/api/my/feedback/received"}},"follows":{"href":"/api/my/follows"},"conversations":{"href":"/api/my/conversations"},"recently_viewed":{"href":"/api/my/viewed_listings"},"lists":{"href":"/api/my/lists"},"listings":{"href":"/api/my/listings"},"drafts":{"href":"/api/my/listings/drafts"},"negotiations":{"buying":{"href":"/api/my/negotiations/buying"},"selling":{"href":"/api/my/listings/negotiations"}},"messages":{"web":{"href":"/my/messages"}},"orders":{"buying":{"all":{"href":"/api/my/orders/buying/all"},"unpaid":{"href":"/api/my/orders/buying/unpaid"}},"selling":{"all":{"href":"/api/my/orders/selling/all"},"unpaid":{"href":"/api/my/orders/selling/unpaid"},"awaiting_shipment":{"href":"/api/my/orders/selling/awaiting_shipment"}},"awaiting_feedback":{"href":"/api/my/orders/awaiting_feedback"}}},"shop":{"href":"/api/shop","payment_methods":{"href":"/api/shop/payment_methods"}},"terms_and_conditions":{"web":{"href":"/page/terms"}},"wants":{"requires_login":true,"href":"/api/wants"},"push_notifications":{"registrations":{"href":"/api/push_notifications/registrations"}},"shipping":{"regions":{"href":"/api/shipping/regions"},"providers":{"href":"/api/shipping/providers"}}},"token":"1962267fb20069da9223dba1aa109754382f9228cc528401ea13d97cd6c961b8d331db5183452201cc36b5ba21810c1e1393276c86ece702a78c6f2c05ac5f25","paypal_email":"reuben.vonrueden@moriette.org","location":{"locality":null,"region":null}}'
52
+ http_version:
53
+ recorded_at: Tue, 06 Oct 2015 18:18:23 GMT
54
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,60 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://sandbox.reverb.com/api/listings
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"make":"Fender","model":"Stratocaster","sku":"TESTSKU1234"}'
9
+ headers:
10
+ Content-Type:
11
+ - application/hal+json
12
+ Accept:
13
+ - application/hal+json
14
+ X-Auth-Token:
15
+ - mangled_token
16
+ response:
17
+ status:
18
+ code: 201
19
+ message: Created
20
+ headers:
21
+ Access-Control-Allow-Credentials:
22
+ - 'true'
23
+ Access-Control-Allow-Origin:
24
+ - "*"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ Content-Type:
28
+ - application/hal+json
29
+ Date:
30
+ - Tue, 06 Oct 2015 18:21:59 GMT
31
+ Etag:
32
+ - '"caa5698c7cc87847b2972e4d35fbeeb0"'
33
+ Server:
34
+ - nginx
35
+ Status:
36
+ - 201 Created
37
+ Vary:
38
+ - Accept-Version
39
+ X-Request-Id:
40
+ - 12d9530d-dcef-4732-9e22-5f527d6237dd
41
+ X-Revision:
42
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
43
+ X-Runtime:
44
+ - '0.086944'
45
+ Content-Length:
46
+ - '2370'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"message":"Your draft listing has been created. You can come back
52
+ and finish it up here, or on the web.","listing":{"make":"Fender","model":"Stratocaster","finish":"","title":"Fender
53
+ Stratocaster","created_at":"2015-10-06T13:21:59-05:00","offers_enabled":true,"_links":{"photo":{"href":"https://da1wmtc5ur1xq.cloudfront.net/assets/products/blank_medium-19ba00051c336ac75f04e103a1ae310b.jpg"},"self":{"href":"/api/listings/14611-fender-stratocaster"},"update":{"method":"PUT","href":"/api/listings/14611-fender-stratocaster"},"end":{"method":"PUT","href":"/api/my/listings/14611-fender-stratocaster/state/end"},"want":{"method":"PUT","href":"/api/wants/14611-fender-stratocaster"},"unwant":{"method":"DELETE","href":"/api/wants/14611-fender-stratocaster"},"edit":{"href":"/api/listings/14611-fender-stratocaster/edit"},"web":{"href":"https://sandbox.reverb.com/item/14611-fender-stratocaster"},"make_offer":{"method":"POST","href":"/api/listings/14611-fender-stratocaster/offer"},"add_to_wishlist":{"method":"POST","href":"/api/my/wishlist/14611-fender-stratocaster"},"remove_from_wishlist":{"method":"DELETE","href":"/api/my/wishlist/14611-fender-stratocaster"},"buy":{"href":"https://sandbox.reverb.com/cart/add?cart_item%5Baction_source_attributes%5D%5Bdevice%5D=\u0026cart_item%5Bproduct_id%5D=14611"},"flag":{"href":"/api/listings/14611-fender-stratocaster/flag"},"contact_seller":{"web":{"href":"https://sandbox.reverb.com/my/messages/new?item=14611-fender-stratocaster\u0026to=1-audrey-l"}},"conversations":{"href":"/api/listings/14611/conversations"},"shop":{"href":"/api/shops/audreys-gear-bazaar","web":{"href":"https://sandbox.reverb.com/shop/audreys-gear-bazaar"}}},"accepted_payment_methods":[],"location":{"country_code":null,"locality":null,"region":null},"has_inventory":false,"draft":true,"live":false,"cloudinary_photos":[],"shop":{"feedback_count":2,"preferred_seller":false,"rating_percentage":0.6},"stats":{"views":0,"watches":0},"offer_count":0,"shipping_policy":"I
54
+ will ship with tracking to the continental United States. Alaska, Hawaii,
55
+ and international shipments may incur additional charges.","payment_policy":"To
56
+ negotiate price, shipping, or payment options, please send a message or make
57
+ an offer.","is_my_listing":false,"photos":[],"shipping":{"us":false,"rates":[]},"seller":{"paypal_email":"reuben.vonrueden@moriette.org"}},"errors":{}}'
58
+ http_version:
59
+ recorded_at: Tue, 06 Oct 2015 18:21:58 GMT
60
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,55 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://sandbox.reverb.com/api/listings
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"make":"Fender","model":"Stratocaster","sku":"THETESTSKU"}'
9
+ headers:
10
+ Content-Type:
11
+ - application/hal+json
12
+ Accept:
13
+ - application/hal+json
14
+ X-Auth-Token:
15
+ - mangled_token
16
+ response:
17
+ status:
18
+ code: 412
19
+ message: Precondition Failed
20
+ headers:
21
+ Cache-Control:
22
+ - no-cache
23
+ Content-Type:
24
+ - application/hal+json
25
+ Date:
26
+ - Tue, 06 Oct 2015 18:20:41 GMT
27
+ Server:
28
+ - nginx
29
+ Status:
30
+ - 412 Precondition Failed
31
+ Vary:
32
+ - Accept-Version
33
+ X-Request-Id:
34
+ - a7dc3946-1c5b-4ef9-b1c5-5aae47b4db25
35
+ X-Revision:
36
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
37
+ X-Runtime:
38
+ - '0.059505'
39
+ Content-Length:
40
+ - '2121'
41
+ Connection:
42
+ - keep-alive
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"message":"Please fill in all the fields required for submitting your
46
+ listing to the marketplace.","listing":{"make":"Fender","model":"Stratocaster","finish":"","title":"Fender
47
+ Stratocaster","offers_enabled":false,"_links":{"photo":{"href":"https://da1wmtc5ur1xq.cloudfront.net/assets/products/blank_medium-19ba00051c336ac75f04e103a1ae310b.jpg"},"self":{"href":"/api/listings/-fender-stratocaster"},"update":{"method":"PUT","href":"/api/listings/-fender-stratocaster"},"end":{"method":"PUT","href":"/api/my/listings/-fender-stratocaster/state/end"},"want":{"method":"PUT","href":"/api/wants/-fender-stratocaster"},"unwant":{"method":"DELETE","href":"/api/wants/-fender-stratocaster"},"edit":{"href":"/api/listings/-fender-stratocaster/edit"},"web":{"href":"https://sandbox.reverb.com/item/-fender-stratocaster"},"add_to_wishlist":{"method":"POST","href":"/api/my/wishlist/-fender-stratocaster"},"remove_from_wishlist":{"method":"DELETE","href":"/api/my/wishlist/-fender-stratocaster"},"flag":{"href":"/api/listings/-fender-stratocaster/flag"},"contact_seller":{"web":{"href":"https://sandbox.reverb.com/my/messages/new?item=-fender-stratocaster\u0026to=1-audrey-l"}},"conversations":{"href":"/api/listings//conversations"},"shop":{"href":"/api/shops/audreys-gear-bazaar","web":{"href":"https://sandbox.reverb.com/shop/audreys-gear-bazaar"}}},"accepted_payment_methods":[],"location":{"country_code":null,"locality":null,"region":null},"has_inventory":false,"draft":true,"live":false,"cloudinary_photos":[],"shop":{"feedback_count":2,"preferred_seller":false,"rating_percentage":0.6},"stats":{"views":0,"watches":0},"offer_count":0,"shipping_policy":"I
48
+ will ship with tracking to the continental United States. Alaska, Hawaii,
49
+ and international shipments may incur additional charges.","payment_policy":"To
50
+ negotiate price, shipping, or payment options, please send a message or make
51
+ an offer.","is_my_listing":false,"photos":[],"shipping":{"us":false,"rates":[]},"seller":{"paypal_email":"reuben.vonrueden@moriette.org"}},"errors":{"sku":["You
52
+ already have a listing with the SKU THETESTSKU. Please use a unique SKU."]}}'
53
+ http_version:
54
+ recorded_at: Tue, 06 Oct 2015 18:20:41 GMT
55
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,152 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://sandbox.reverb.com/api/webhooks/registrations
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Content-Type:
11
+ - application/hal+json
12
+ Accept:
13
+ - application/hal+json
14
+ X-Auth-Token:
15
+ - mangled_token
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Access-Control-Allow-Credentials:
22
+ - 'true'
23
+ Access-Control-Allow-Origin:
24
+ - "*"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ Content-Type:
28
+ - application/hal+json
29
+ Date:
30
+ - Tue, 06 Oct 2015 18:18:27 GMT
31
+ Etag:
32
+ - '"9653bdfae43787f4f7ac431c626c2382"'
33
+ Server:
34
+ - nginx
35
+ Status:
36
+ - 200 OK
37
+ Vary:
38
+ - Accept-Version
39
+ X-Request-Id:
40
+ - 14284f98-0eb0-4df1-8dc7-4e6d4904b765
41
+ X-Revision:
42
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
43
+ X-Runtime:
44
+ - '0.019050'
45
+ Content-Length:
46
+ - '183'
47
+ Connection:
48
+ - keep-alive
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"registrations":[{"url":"http://requestb.in/1etnuhm1","topic":"listings/update","created_at":"2015-10-06T13:17:09-05:00","_links":{"self":{"href":"/api/webhooks/registrations/5"}}}]}'
52
+ http_version:
53
+ recorded_at: Tue, 06 Oct 2015 18:18:26 GMT
54
+ - request:
55
+ method: delete
56
+ uri: https://sandbox.reverb.com/api/webhooks/registrations/5
57
+ body:
58
+ encoding: US-ASCII
59
+ string: ''
60
+ headers:
61
+ Content-Type:
62
+ - application/hal+json
63
+ Accept:
64
+ - application/hal+json
65
+ X-Auth-Token:
66
+ - mangled_token
67
+ response:
68
+ status:
69
+ code: 200
70
+ message: OK
71
+ headers:
72
+ Cache-Control:
73
+ - max-age=0, private, must-revalidate
74
+ Content-Type:
75
+ - application/hal+json
76
+ Date:
77
+ - Tue, 06 Oct 2015 18:18:27 GMT
78
+ Etag:
79
+ - '"99914b932bd37a50b983c5e7c90ae93b"'
80
+ Server:
81
+ - nginx
82
+ Status:
83
+ - 200 OK
84
+ Vary:
85
+ - Accept-Version
86
+ X-Request-Id:
87
+ - e8c6ee73-ba46-46cc-9e64-0ef9479b0dee
88
+ X-Revision:
89
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
90
+ X-Runtime:
91
+ - '0.021243'
92
+ Content-Length:
93
+ - '2'
94
+ Connection:
95
+ - keep-alive
96
+ body:
97
+ encoding: UTF-8
98
+ string: "{}"
99
+ http_version:
100
+ recorded_at: Tue, 06 Oct 2015 18:18:27 GMT
101
+ - request:
102
+ method: post
103
+ uri: https://sandbox.reverb.com/api/webhooks/registrations
104
+ body:
105
+ encoding: UTF-8
106
+ string: '{"url":"http://requestb.in/1etnuhm1","topic":"listings/update"}'
107
+ headers:
108
+ Content-Type:
109
+ - application/hal+json
110
+ Accept:
111
+ - application/hal+json
112
+ X-Auth-Token:
113
+ - mangled_token
114
+ response:
115
+ status:
116
+ code: 201
117
+ message: Created
118
+ headers:
119
+ Access-Control-Allow-Credentials:
120
+ - 'true'
121
+ Access-Control-Allow-Origin:
122
+ - "*"
123
+ Cache-Control:
124
+ - max-age=0, private, must-revalidate
125
+ Content-Type:
126
+ - application/hal+json
127
+ Date:
128
+ - Tue, 06 Oct 2015 18:18:27 GMT
129
+ Etag:
130
+ - '"bc23c3fe77404b2242859893b870e426"'
131
+ Server:
132
+ - nginx
133
+ Status:
134
+ - 201 Created
135
+ Vary:
136
+ - Accept-Version
137
+ X-Request-Id:
138
+ - 56be12e3-0aaa-4780-8b7f-980e283dee3c
139
+ X-Revision:
140
+ - fda6d910fe5754c2129bb9368ea10ed75fae50b3
141
+ X-Runtime:
142
+ - '0.024520'
143
+ Content-Length:
144
+ - '163'
145
+ Connection:
146
+ - keep-alive
147
+ body:
148
+ encoding: UTF-8
149
+ string: '{"url":"http://requestb.in/1etnuhm1","topic":"listings/update","created_at":"2015-10-06T13:18:27-05:00","_links":{"self":{"href":"/api/webhooks/registrations/6"}}}'
150
+ http_version:
151
+ recorded_at: Tue, 06 Oct 2015 18:18:27 GMT
152
+ recorded_with: VCR 2.9.3