linkedin2 0.0.16 → 0.0.17

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 (51) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +2 -0
  3. data/.gitignore +2 -0
  4. data/.rspec +2 -2
  5. data/.travis.yml +1 -1
  6. data/README.md +3 -3
  7. data/Rakefile +1 -1
  8. data/lib/linkedin/api.rb +16 -0
  9. data/lib/linkedin/api/authentication.rb +5 -7
  10. data/lib/linkedin/api/companies.rb +16 -10
  11. data/lib/linkedin/api/invitation.rb +39 -0
  12. data/lib/linkedin/api/messaging.rb +24 -0
  13. data/lib/linkedin/api/network_updates.rb +5 -9
  14. data/lib/linkedin/api/people.rb +18 -0
  15. data/lib/linkedin/client.rb +34 -72
  16. data/lib/linkedin/configuration.rb +26 -11
  17. data/lib/linkedin/credentials.rb +27 -0
  18. data/lib/linkedin/errors.rb +45 -0
  19. data/lib/linkedin/faraday_middleware.rb +6 -4
  20. data/lib/linkedin/faraday_middleware/credentials_request.rb +31 -0
  21. data/lib/linkedin/faraday_middleware/{linkedin_error_response.rb → error_response.rb} +2 -10
  22. data/lib/linkedin/faraday_middleware/format_request.rb +17 -0
  23. data/lib/linkedin/faraday_middleware/user_agent_request.rb +10 -0
  24. data/lib/linkedin/fields.rb +58 -0
  25. data/lib/linkedin/industries.rb +199 -0
  26. data/lib/linkedin/response.rb +19 -0
  27. data/lib/linkedin/version.rb +1 -1
  28. data/lib/linkedin2.rb +11 -19
  29. data/linkedin.gemspec +16 -7
  30. data/spec/api/companies_spec.rb +8 -9
  31. data/spec/api/groups_spec.rb +3 -4
  32. data/spec/api/jobs_spec.rb +2 -3
  33. data/spec/api/network_updates_spec.rb +9 -15
  34. data/spec/api/{profiles_spec.rb → people_spec.rb} +11 -13
  35. data/spec/faraday_middleware/{linkedin_error_response_spec.rb → error_response_spec.rb} +8 -21
  36. data/spec/fixtures/requests/companies.yml +25 -15
  37. data/spec/fixtures/requests/invalid.yml +7 -7
  38. data/spec/fixtures/requests/network_updates.yml +12 -12
  39. data/spec/fixtures/requests/people.yml +380 -0
  40. data/spec/spec_helper.rb +18 -19
  41. data/spec/support/coverage.rb +14 -0
  42. data/spec/support/vcr.rb +9 -0
  43. data/spec/test_app.yml +3 -2
  44. metadata +119 -38
  45. data/lib/linkedin/api/industries.rb +0 -171
  46. data/lib/linkedin/api/permissions.rb +0 -42
  47. data/lib/linkedin/api/profiles.rb +0 -71
  48. data/lib/linkedin/error.rb +0 -29
  49. data/lib/linkedin/faraday_middleware/linkedin_format_request.rb +0 -26
  50. data/lib/linkedin/industry.rb +0 -33
  51. data/spec/fixtures/requests/profiles.yml +0 -201
@@ -1,3 +1,3 @@
1
1
  module LinkedIn
2
- VERSION = '0.0.16'
2
+ VERSION = '0.0.17'
3
3
  end
data/lib/linkedin2.rb CHANGED
@@ -1,42 +1,34 @@
1
- require 'forwardable'
2
- require 'oauth2'
3
1
  require 'active_support'
4
2
  require 'active_support/core_ext'
5
3
  require 'active_support/time'
6
- require 'faraday'
7
4
  require 'faraday_middleware'
8
- require 'yaml'
9
5
  require 'hashie'
6
+ require 'oauth2'
10
7
 
11
8
  require 'linkedin/version'
12
- require 'linkedin/error'
9
+ require 'linkedin/errors'
10
+ require 'linkedin/fields'
11
+
13
12
  require 'linkedin/utils'
14
13
  require 'linkedin/configuration'
15
14
  require 'linkedin/base'
16
15
  require 'linkedin/profile'
17
16
  require 'linkedin/company'
18
- require 'linkedin/industry'
17
+ require 'linkedin/industries'
18
+ require 'linkedin/api'
19
+ require 'linkedin/credentials'
20
+ require 'linkedin/response'
19
21
  require 'linkedin/faraday_middleware'
20
-
21
- require 'linkedin/api/authentication'
22
- require 'linkedin/api/profiles'
23
- require 'linkedin/api/network_updates'
24
- require 'linkedin/api/companies'
25
- require 'linkedin/api/groups'
26
- require 'linkedin/api/industries'
27
- require 'linkedin/api/jobs'
28
- require 'linkedin/api/permissions'
29
-
30
22
  require 'linkedin/client'
31
23
 
32
24
  module LinkedIn
33
- def self.new(options = {}, &block)
34
- Client.new options, &block
25
+ def self.new(config = {}, &block)
26
+ Client.new config, &block
35
27
  end
36
28
 
37
29
  [:r_basicprofile, :r_emailaddress, :r_fullprofile, :r_contactinfo, :r_network, :rw_groups, :rw_nus, :w_messages].each do |field|
38
30
  define_singleton_method field do
39
- API::Permissions.const_get field.to_s.upcase
31
+ Fields.const_get field.to_s.upcase
40
32
  end
41
33
  end
42
34
  end
data/linkedin.gemspec CHANGED
@@ -18,16 +18,25 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.add_dependency 'oauth2', '~> 0.9'
22
- spec.add_dependency 'hashie', '> 2.1.1'
21
+ spec.add_dependency 'oauth2', '~> 1.0'
22
+ spec.add_dependency 'hashie', '~> 3.3.1'
23
23
  spec.add_dependency 'activesupport', '>= 3.2'
24
24
  spec.add_dependency 'faraday_middleware', '~> 0.9.1'
25
25
 
26
- spec.add_development_dependency 'bundler', '~> 1.3'
27
- spec.add_development_dependency 'rake'
28
- spec.add_development_dependency 'pry'
29
- spec.add_development_dependency 'simplecov'
30
- spec.add_development_dependency 'rspec', '~> 2.14'
26
+ spec.add_development_dependency 'dotenv', '~> 0.11.1'
27
+
28
+ spec.add_development_dependency 'bundler', '~> 1.6'
29
+ spec.add_development_dependency 'rake', '~> 10.0'
30
+
31
+ spec.add_development_dependency 'pry', '~> 0.10.0'
32
+ spec.add_development_dependency 'pry-byebug', '~> 1.3.3'
33
+
34
+ spec.add_development_dependency 'rspec', '~> 3.0.0'
35
+ spec.add_development_dependency 'rspec-collection_matchers', '1.0.0'
36
+ spec.add_development_dependency 'webmock', '~> 1.18.0'
37
+ spec.add_development_dependency 'simplecov', '~> 0.9.0'
38
+ spec.add_development_dependency 'coveralls', '~> 0.7.1'
31
39
  spec.add_development_dependency 'vcr', '~> 2.5'
40
+
32
41
  spec.add_development_dependency 'yard'
33
42
  end
@@ -1,29 +1,27 @@
1
- require 'spec_helper'
2
-
3
1
  describe LinkedIn::API::Companies, vcr: { cassette_name: 'companies' } do
4
2
  subject { LinkedIn::Client.new }
5
3
 
6
4
  describe '#company' do
7
5
  it 'fetches a company profile by id' do
8
- subject.company(selector: 162479)['name'].should eq 'Apple'
6
+ expect(subject.company(162479)['name']).to eq 'Apple'
9
7
  end
10
8
 
11
9
  it 'fetches a company profile by universal name' do
12
- subject.company(selector: 'universal-name=linkedin')['name'].should eq 'LinkedIn'
10
+ expect(subject.company('universal-name=linkedin')['name']).to eq 'LinkedIn'
13
11
  end
14
12
 
15
13
  it 'fetches a company profile by e-mail domain' do
16
14
  companies = subject.company(filter: 'email-domain=apple.com')
17
- companies['values'].first['name'].should eq 'Apple'
15
+ expect(companies['values'].first['name']).to eq 'Apple'
18
16
  end
19
17
 
20
18
  it 'fetches companies in bulk using their respective selectors' do
21
- companies = subject.company(selector: [162479, 'universal-name=linkedin'])
22
- companies['values'].collect { |c| c['name'] }.should eq ['Apple', 'LinkedIn']
19
+ companies = subject.company([162479, 'universal-name=linkedin'])
20
+ expect(companies['values'].collect { |c| c['name'] }).to eq ['Apple', 'LinkedIn']
23
21
  end
24
22
 
25
23
  it 'fetches companies that the current user is an adminstrator of' do
26
- subject.company(filter: 'is-company-admin=true')['_total'].should eq 0
24
+ expect(subject.company(filter: 'is-company-admin=true')['_total']).to eq 0
27
25
  end
28
26
  end
29
27
 
@@ -41,6 +39,7 @@ describe LinkedIn::API::Companies, vcr: { cassette_name: 'companies' } do
41
39
 
42
40
  it "should raise AccessDeniedError when LinkedIn returns 403 status code" do
43
41
  pending
42
+ pass
44
43
  end
45
44
  end
46
- end
45
+ end
@@ -1,5 +1,3 @@
1
- require 'spec_helper'
2
-
3
1
  describe LinkedIn::API::Groups do
4
2
  describe '#jobs' do
5
3
  end
@@ -17,9 +15,10 @@ describe LinkedIn::API::Groups do
17
15
  response.body.should == nil
18
16
  response.code.should == "201"
19
17
  end
20
-
18
+
21
19
  it "should raise AccessDeniedError when LinkedIn returns 403 status code" do
22
20
  pending
21
+ pass
23
22
  end
24
23
  end
25
- end
24
+ end
@@ -1,5 +1,3 @@
1
- require 'spec_helper'
2
-
3
1
  describe LinkedIn::API::Jobs do
4
2
  describe '#jobs' do
5
3
  end
@@ -29,6 +27,7 @@ describe LinkedIn::API::Jobs do
29
27
 
30
28
  it "should raise AccessDeniedError when LinkedIn returns 403 status code" do
31
29
  pending
30
+ pass
32
31
  end
33
32
  end
34
- end
33
+ end
@@ -1,32 +1,26 @@
1
- require 'spec_helper'
2
-
3
- describe LinkedIn::API::Profiles, vcr: { cassette_name: 'network_updates' } do
1
+ describe LinkedIn::API::NetworkUpdates, vcr: { cassette_name: 'network_updates' } do
4
2
  subject { LinkedIn::Client.new }
5
3
 
6
- describe '#network_updates' do
4
+ context '#network_updates' do
7
5
  it 'fetches network updates for the current user' do
8
6
  network_updates = subject.network_updates
9
- network_updates['_total'].should eq 13
10
- network_updates['values'].should have(10).things
7
+ expect(network_updates['_total']).to eq 13
8
+ expect(network_updates['values']).to have(10).things
11
9
  end
12
10
 
13
11
  it 'fetches network updates by key' do
14
- network_updates = subject.network_updates(selector: 'key=PROF-18939563-5794095336964247552-*1')
12
+ network_updates = subject.network_updates(key: 'PROF-18939563-5794095336964247552-*1')
15
13
  network_updates['updatedFields']['values'].should have(1).thing
16
14
  end
17
- end
18
15
 
19
- describe '#network_update_comments' do
20
16
  it 'fetches comments for network updates' do
21
- comments = subject.network_update_comments(selector: 'key=PROF-18939563-5794095336964247552-*1')
17
+ comments = subject.network_updates(key: 'PROF-18939563-5794095336964247552-*1', type: 'update-comments')
22
18
  comments['values'].first['comment'].should eq 'Whaaaat'
23
19
  end
24
- end
25
-
26
- describe '#network_update_likes' do
20
+
27
21
  it 'fetches "likes" for network updates' do
28
- likes = subject.network_update_likes(selector: 'key=PROF-18939563-5794095336964247552-*1')
22
+ likes = subject.network_updates(key: 'PROF-18939563-5794095336964247552-*1', type: 'likes')
29
23
  likes['values'].first['person']['id'].should eq 'cDmdM9cb0H'
30
24
  end
31
25
  end
32
- end
26
+ end
@@ -1,27 +1,25 @@
1
- require 'spec_helper'
2
-
3
- describe LinkedIn::API::Profiles, vcr: { cassette_name: 'profiles' } do
1
+ describe LinkedIn::API::People, vcr: { cassette_name: 'people' } do
4
2
  subject { LinkedIn::Client.new }
5
3
 
6
- describe '#profile' do
4
+ context '#profile' do
7
5
  it 'fetches the profile of the current user' do
8
6
  profile = subject.profile
9
7
 
10
- profile['firstName'].should eq 'Josh'
11
- profile['lastName'].should eq 'Testjordan'
8
+ expect(profile['firstName']).to eq 'Josh'
9
+ expect(profile['lastName']).to eq 'Testjordan'
12
10
  end
13
11
 
14
12
  it 'fetches publicly available profiles' do
15
- profile = subject.profile(selector: 'id=Fy5e5a4mqr')
16
-
17
- profile['firstName'].should eq 'Sir Richard'
18
- profile['lastName'].should eq 'B.'
13
+ profile = subject.profile('id=Fy5e5a4mqr')
14
+
15
+ expect(profile['firstName']).to eq 'Sir Richard'
16
+ expect(profile['lastName']).to eq 'B.'
19
17
  end
20
18
  end
21
19
 
22
- describe '#connections' do
20
+ context '#connections' do
23
21
  it 'fetches the connections of the current user' do
24
- subject.connections['values'].should have(2).things
22
+ expect(subject.connections['values']).to have(2).things
25
23
  end
26
24
  end
27
25
 
@@ -99,7 +97,7 @@ describe LinkedIn::API::Profiles, vcr: { cassette_name: 'profiles' } do
99
97
  end
100
98
  end
101
99
 
102
- describe '#connections' do
100
+ context '#connections' do
103
101
  it 'finds all connections for the current user' do
104
102
  linkedin_keys = %w(id headline firstName lastName industry location pictureUrl siteStandardProfileRequest)
105
103
  connections = subject.connections
@@ -1,14 +1,9 @@
1
- require 'spec_helper'
2
-
3
- describe LinkedIn::FaradayMiddleware::LinkedinErrorResponse, vcr: { cassette_name: 'invalid' } do
1
+ describe LinkedIn::FaradayMiddleware::ErrorResponse, vcr: { cassette_name: 'invalid' } do
4
2
  subject { LinkedIn::Client.new(access_token: nil) }
5
3
 
6
4
  describe '#on_error' do
7
5
  it 'raises an error with the status and body reported by Rack included' do
8
- begin
9
- subject.profile
10
- raise 'Should have encountered an exception'
11
- rescue LinkedIn::Error => error
6
+ expect { subject.profile }.to raise_error do |error|
12
7
  error.status.should eq 401
13
8
  error.body.should eq({
14
9
  'errorCode' => 0,
@@ -21,21 +16,13 @@ describe LinkedIn::FaradayMiddleware::LinkedinErrorResponse, vcr: { cassette_nam
21
16
  end
22
17
 
23
18
  it 'uses the message returned by LinkedIn' do
24
- begin
25
- subject.profile
26
- raise 'Should have encountered an exception'
27
- rescue LinkedIn::Error => err
28
- err.message.should eq 'Empty oauth2_access_token'
29
- end
19
+ expect { subject.profile }.to raise_error { |error| expect(error.message).to eq 'Empty oauth2_access_token' }
30
20
  end
31
21
 
32
22
  it 'includes the Faraday request/response object for further introspection by the consumer' do
33
- begin
34
- subject.profile
35
- raise 'Should have encountered an exception'
36
- rescue LinkedIn::Error => err
37
- err.request.headers['User-Agent'].should eq 'Faraday v0.8.8'
38
- err.response.headers['Server'].should eq 'Apache-Coyote/1.1'
23
+ expect { subject.profile }.to raise_error do |error|
24
+ error.request.headers['User-Agent'].should eq 'LinkedIn2 Gem v0.0.16'
25
+ error.response.headers['server'].should eq 'Apache-Coyote/1.1'
39
26
  end
40
27
  end
41
28
 
@@ -46,8 +33,8 @@ describe LinkedIn::FaradayMiddleware::LinkedinErrorResponse, vcr: { cassette_nam
46
33
  raise 'Should have encountered an exception'
47
34
  rescue LinkedIn::Error => err
48
35
  pending 'we need to discuss camelCase vs snake_case. LinkedIn returns "errorCode"'
49
- err.error_code.should eq
36
+ err.error_code.should eq
50
37
  end
51
38
  end
52
39
  end
53
- end
40
+ end
@@ -2,17 +2,19 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: https://api.linkedin.com/v1/companies/162479?oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8&format=json
5
+ uri: https://api.linkedin.com/v1/companies/162479?oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
11
  - Faraday v0.8.8
12
+ X-Li-Format:
13
+ - json
12
14
  response:
13
15
  status:
14
16
  code: 200
15
- message:
17
+ message:
16
18
  headers:
17
19
  server:
18
20
  - Apache-Coyote/1.1
@@ -47,21 +49,23 @@ http_interactions:
47
49
  "id": 162479,
48
50
  "name": "Apple"
49
51
  }
50
- http_version:
52
+ http_version:
51
53
  recorded_at: Tue, 15 Oct 2013 03:40:32 GMT
52
54
  - request:
53
55
  method: get
54
- uri: https://api.linkedin.com/v1/companies/universal-name=linkedin?oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8&format=json
56
+ uri: https://api.linkedin.com/v1/companies/universal-name=linkedin?oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8
55
57
  body:
56
58
  encoding: US-ASCII
57
59
  string: ''
58
60
  headers:
59
61
  User-Agent:
60
62
  - Faraday v0.8.8
63
+ X-Li-Format:
64
+ - json
61
65
  response:
62
66
  status:
63
67
  code: 200
64
- message:
68
+ message:
65
69
  headers:
66
70
  server:
67
71
  - Apache-Coyote/1.1
@@ -96,21 +100,23 @@ http_interactions:
96
100
  "id": 1337,
97
101
  "name": "LinkedIn"
98
102
  }
99
- http_version:
103
+ http_version:
100
104
  recorded_at: Tue, 15 Oct 2013 03:40:33 GMT
101
105
  - request:
102
106
  method: get
103
- uri: https://api.linkedin.com/v1/companies/?email-domain=apple.com&oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8&format=json
107
+ uri: https://api.linkedin.com/v1/companies?email-domain=apple.com&oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8
104
108
  body:
105
109
  encoding: US-ASCII
106
110
  string: ''
107
111
  headers:
108
112
  User-Agent:
109
113
  - Faraday v0.8.8
114
+ X-Li-Format:
115
+ - json
110
116
  response:
111
117
  status:
112
118
  code: 200
113
- message:
119
+ message:
114
120
  headers:
115
121
  server:
116
122
  - Apache-Coyote/1.1
@@ -148,21 +154,23 @@ http_interactions:
148
154
  "name": "Apple"
149
155
  }]
150
156
  }
151
- http_version:
157
+ http_version:
152
158
  recorded_at: Tue, 15 Oct 2013 03:40:33 GMT
153
159
  - request:
154
160
  method: get
155
- uri: https://api.linkedin.com/v1/companies::(162479,universal-name=linkedin)?oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8&format=json
161
+ uri: https://api.linkedin.com/v1/companies::(162479,universal-name=linkedin)?oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8
156
162
  body:
157
163
  encoding: US-ASCII
158
164
  string: ''
159
165
  headers:
160
166
  User-Agent:
161
167
  - Faraday v0.8.8
168
+ X-Li-Format:
169
+ - json
162
170
  response:
163
171
  status:
164
172
  code: 200
165
- message:
173
+ message:
166
174
  headers:
167
175
  server:
168
176
  - Apache-Coyote/1.1
@@ -208,21 +216,23 @@ http_interactions:
208
216
  }
209
217
  ]
210
218
  }
211
- http_version:
219
+ http_version:
212
220
  recorded_at: Tue, 15 Oct 2013 03:40:33 GMT
213
221
  - request:
214
222
  method: get
215
- uri: https://api.linkedin.com/v1/companies/?is-company-admin=true&oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8&format=json
223
+ uri: https://api.linkedin.com/v1/companies?is-company-admin=true&oauth2_access_token=AQUJwEF40pJUbVxsW_mujQ3QCiXvlTnMFk55SlfVPYRcAPdsn1oE1Hm8Ldlc61o57k96i04ufG81KFdPJIOSJswXsGyZ0tk9IMZea8sfNXMGMnZgikQJUQPkmRVYVw9BP1qH9tp7hJF32DQtzkBB_NE8xPASPVgXVWbbntChGyYqqDvF1p8
216
224
  body:
217
225
  encoding: US-ASCII
218
226
  string: ''
219
227
  headers:
220
228
  User-Agent:
221
229
  - Faraday v0.8.8
230
+ X-Li-Format:
231
+ - json
222
232
  response:
223
233
  status:
224
234
  code: 200
225
- message:
235
+ message:
226
236
  headers:
227
237
  server:
228
238
  - Apache-Coyote/1.1
@@ -253,6 +263,6 @@ http_interactions:
253
263
  body:
254
264
  encoding: UTF-8
255
265
  string: '{"_total": 0}'
256
- http_version:
266
+ http_version:
257
267
  recorded_at: Tue, 15 Oct 2013 03:40:34 GMT
258
268
  recorded_with: VCR 2.5.0