linkedin-api2 1.1.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/.autotest +14 -0
  3. data/.gemtest +0 -0
  4. data/.gitignore +42 -0
  5. data/.rspec +1 -0
  6. data/.travis.yml +6 -0
  7. data/.yardopts +7 -0
  8. data/CHANGELOG.md +99 -0
  9. data/EXAMPLES.md +202 -0
  10. data/Gemfile +11 -0
  11. data/LICENSE +22 -0
  12. data/README.md +43 -0
  13. data/Rakefile +15 -0
  14. data/lib/linked_in/api.rb +38 -0
  15. data/lib/linked_in/api/communications.rb +44 -0
  16. data/lib/linked_in/api/companies.rb +129 -0
  17. data/lib/linked_in/api/groups.rb +115 -0
  18. data/lib/linked_in/api/jobs.rb +64 -0
  19. data/lib/linked_in/api/people.rb +73 -0
  20. data/lib/linked_in/api/query_helpers.rb +86 -0
  21. data/lib/linked_in/api/share_and_social_stream.rb +137 -0
  22. data/lib/linked_in/client.rb +51 -0
  23. data/lib/linked_in/errors.rb +29 -0
  24. data/lib/linked_in/helpers.rb +6 -0
  25. data/lib/linked_in/helpers/authorization.rb +69 -0
  26. data/lib/linked_in/helpers/request.rb +85 -0
  27. data/lib/linked_in/mash.rb +95 -0
  28. data/lib/linked_in/search.rb +71 -0
  29. data/lib/linked_in/version.rb +11 -0
  30. data/lib/linkedin.rb +35 -0
  31. data/linkedin-api2.gemspec +27 -0
  32. data/spec/cases/api_spec.rb +308 -0
  33. data/spec/cases/linkedin_spec.rb +37 -0
  34. data/spec/cases/mash_spec.rb +113 -0
  35. data/spec/cases/oauth_spec.rb +178 -0
  36. data/spec/cases/search_spec.rb +234 -0
  37. data/spec/fixtures/cassette_library/LinkedIn_Api/Company_API.yml +81 -0
  38. data/spec/fixtures/cassette_library/LinkedIn_Api/Company_API/should_load_correct_company_data.yml +81 -0
  39. data/spec/fixtures/cassette_library/LinkedIn_Client/_authorize_from_request/should_return_a_valid_access_token.yml +37 -0
  40. data/spec/fixtures/cassette_library/LinkedIn_Client/_request_token/with_a_callback_url/should_return_a_valid_access_token.yml +37 -0
  41. data/spec/fixtures/cassette_library/LinkedIn_Client/_request_token/with_default_options/should_return_a_valid_request_token.yml +37 -0
  42. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_company_name_option/should_perform_a_search.yml +92 -0
  43. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_email_address/should_perform_a_people_search.yml +57 -0
  44. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_first_name_and_last_name_options/should_perform_a_search.yml +100 -0
  45. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_first_name_and_last_name_options_with_fields/should_perform_a_search.yml +114 -0
  46. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_keywords_string_parameter/should_perform_a_search.yml +52 -0
  47. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_multiple_email_address/should_perform_a_multi-email_search.yml +59 -0
  48. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_single_keywords_option/should_perform_a_search.yml +52 -0
  49. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/by_single_keywords_option_with_pagination/should_perform_a_search.yml +43 -0
  50. data/spec/fixtures/cassette_library/LinkedIn_Search/_search/email_search_returns_unauthorized/should_raise_an_unauthorized_error.yml +59 -0
  51. data/spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_keywords_options_with_fields/should_perform_a_search.yml +43 -0
  52. data/spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_keywords_string_parameter/should_perform_a_company_search.yml +80 -0
  53. data/spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option/should_perform_a_company_search.yml +80 -0
  54. data/spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option_with_facets_to_return/should_return_a_facet.yml +80 -0
  55. data/spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option_with_pagination/should_perform_a_search.yml +74 -0
  56. data/spec/helper.rb +34 -0
  57. metadata +268 -0
@@ -0,0 +1,80 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.linkedin.com/v1/company-search?keywords=apple
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Li-Format:
11
+ - json
12
+ Authorization:
13
+ - OAuth oauth_consumer_key="mpibxdpwbwry", oauth_nonce="8HvACp7Bnl1RHEamMoOAgSExAIsa0ZmPg38voXltI",
14
+ oauth_signature="vU6TKCCBvu783h%2B0diQLZkcBKb8%3D", oauth_signature_method="HMAC-SHA1",
15
+ oauth_timestamp="1365631653", oauth_token="d9f69cd6-f3f3-4c26-9f2c-12cd8e228089",
16
+ oauth_version="1.0"
17
+ User-Agent:
18
+ - OAuth gem v0.4.7
19
+ response:
20
+ status:
21
+ code: 200
22
+ message: OK
23
+ headers:
24
+ X-Li-Request-Id:
25
+ - XPJE34FJFO
26
+ X-Li-Format:
27
+ - json
28
+ Date:
29
+ - Wed, 10 Apr 2013 22:07:33 GMT
30
+ Vary:
31
+ - ! '*'
32
+ Server:
33
+ - Apache-Coyote/1.1
34
+ Content-Type:
35
+ - application/json;charset=UTF-8
36
+ Transfer-Encoding:
37
+ - chunked
38
+ body:
39
+ encoding: UTF-8
40
+ string: ! "{\n \"companies\": {\n \"_count\": 10,\n \"_start\": 0,\n
41
+ \"_total\": 8450,\n \"values\": [\n {\n \"id\": 162479,\n
42
+ \"name\": \"Apple\"\n },\n {\n \"id\": 19271,\n \"name\":
43
+ \"Apple Vacations\"\n },\n {\n \"id\": 778626,\n \"name\":
44
+ \"Big Apple Holdings, Inc. dba Big Apple International Realty\"\n },\n
45
+ {\n \"id\": 112136,\n \"name\": \"Apple & Associates\"\n
46
+ },\n {\n \"id\": 772044,\n \"name\": \"Stone Apple
47
+ Solutions\"\n },\n {\n \"id\": 2135525,\n \"name\":
48
+ \"iSquare - Apple Authorized Distributor in Greece & Cyprus\"\n },\n
49
+ {\n \"id\": 2303504,\n \"name\": \"Filex Apple Store &
50
+ Support\"\n },\n {\n \"id\": 2419290,\n \"name\":
51
+ \"Apple Nieuws Vlaanderen\"\n },\n {\n \"id\": 2260437,\n
52
+ \"name\": \"OGGO - Services Apple Macintosh\"\n },\n {\n
53
+ \"id\": 1049054,\n \"name\": \"Apple Crumble\"\n }\n ]\n
54
+ },\n \"facets\": {\n \"_total\": 1,\n \"values\": [{\n \"buckets\":{\n
55
+ \"_total\": 10,\n \"values\": [\n {\n \"code\":
56
+ \"us:0\",\n \"count\": 2511,\n \"name\": \"United States\",\n
57
+ \"selected\": false\n },\n {\n \"code\":
58
+ \"gb:0\",\n \"count\": 702,\n \"name\": \"United Kingdom\",\n
59
+ \"selected\": false\n },\n {\n \"code\":
60
+ \"us:84\",\n \"count\": 322,\n \"name\": \"San Francisco
61
+ Bay Area\",\n \"selected\": false\n },\n {\n
62
+ \"code\": \"us:70\",\n \"count\": 285,\n \"name\":
63
+ \"Greater New York City Area\",\n \"selected\": false\n },\n
64
+ {\n \"code\": \"nl:0\",\n \"count\": 284,\n
65
+ \"name\": \"Netherlands\",\n \"selected\": false\n
66
+ },\n {\n \"code\": \"ca:0\",\n \"count\":
67
+ 266,\n \"name\": \"Canada\",\n \"selected\": false\n
68
+ },\n {\n \"code\": \"au:0\",\n \"count\":
69
+ 195,\n \"name\": \"Australia\",\n \"selected\": false\n
70
+ },\n {\n \"code\": \"in:0\",\n \"count\":
71
+ 186,\n \"name\": \"India\",\n \"selected\": false\n
72
+ },\n {\n \"code\": \"it:0\",\n \"count\":
73
+ 177,\n \"name\": \"Italy\",\n \"selected\": false\n
74
+ },\n {\n \"code\": \"us:49\",\n \"count\":
75
+ 173,\n \"name\": \"Greater Los Angeles Area\",\n \"selected\":
76
+ false\n }\n ]\n },\n \"code\": \"location\",\n \"name\":
77
+ \"Location\"\n }]\n },\n \"numResults\": 8450\n}"
78
+ http_version: '1.1'
79
+ recorded_at: Tue, 04 Jun 2013 03:42:37 GMT
80
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,80 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.linkedin.com/v1/company-search?facets=industry&keywords=apple
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Li-Format:
11
+ - json
12
+ Authorization:
13
+ - OAuth oauth_consumer_key="mpibxdpwbwry", oauth_nonce="FU07WVy5LyepRG8O99eNUI0fqIxdghVO9gXhSQAOA",
14
+ oauth_signature="51O%2BsP4hpjq93vwrFm2zrox0xfI%3D", oauth_signature_method="HMAC-SHA1",
15
+ oauth_timestamp="1365631653", oauth_token="d9f69cd6-f3f3-4c26-9f2c-12cd8e228089",
16
+ oauth_version="1.0"
17
+ User-Agent:
18
+ - OAuth gem v0.4.7
19
+ response:
20
+ status:
21
+ code: 200
22
+ message: OK
23
+ headers:
24
+ X-Li-Request-Id:
25
+ - G21FIZ5M8V
26
+ X-Li-Format:
27
+ - json
28
+ Date:
29
+ - Wed, 10 Apr 2013 22:07:33 GMT
30
+ Vary:
31
+ - ! '*'
32
+ Server:
33
+ - Apache-Coyote/1.1
34
+ Content-Type:
35
+ - application/json;charset=UTF-8
36
+ Transfer-Encoding:
37
+ - chunked
38
+ body:
39
+ encoding: UTF-8
40
+ string: ! "{\n \"companies\": {\n \"_count\": 10,\n \"_start\": 0,\n
41
+ \"_total\": 8450,\n \"values\": [\n {\n \"id\": 162479,\n
42
+ \"name\": \"Apple\"\n },\n {\n \"id\": 19271,\n \"name\":
43
+ \"Apple Vacations\"\n },\n {\n \"id\": 778626,\n \"name\":
44
+ \"Big Apple Holdings, Inc. dba Big Apple International Realty\"\n },\n
45
+ {\n \"id\": 112136,\n \"name\": \"Apple & Associates\"\n
46
+ },\n {\n \"id\": 772044,\n \"name\": \"Stone Apple
47
+ Solutions\"\n },\n {\n \"id\": 2135525,\n \"name\":
48
+ \"iSquare - Apple Authorized Distributor in Greece & Cyprus\"\n },\n
49
+ {\n \"id\": 2303504,\n \"name\": \"Filex Apple Store &
50
+ Support\"\n },\n {\n \"id\": 2419290,\n \"name\":
51
+ \"Apple Nieuws Vlaanderen\"\n },\n {\n \"id\": 2260437,\n
52
+ \"name\": \"OGGO - Services Apple Macintosh\"\n },\n {\n
53
+ \"id\": 1049054,\n \"name\": \"Apple Crumble\"\n }\n ]\n
54
+ },\n \"facets\": {\n \"_total\": 1,\n \"values\": [{\n \"buckets\":{\n
55
+ \"_total\": 10,\n \"values\": [\n {\n \"code\":
56
+ \"96\",\n \"count\": 2062,\n \"name\": \"Information
57
+ Technology and Services\",\n \"selected\": false\n },\n
58
+ {\n \"code\": \"4\",\n \"count\": 1031,\n
59
+ \"name\": \"Computer Software\",\n \"selected\": false\n
60
+ },\n {\n \"code\": \"6\",\n \"count\":
61
+ 472,\n \"name\": \"Internet\",\n \"selected\": false\n
62
+ },\n {\n \"code\": \"3\",\n \"count\":
63
+ 415,\n \"name\": \"Computer Hardware\",\n \"selected\":
64
+ false\n },\n {\n \"code\": \"80\",\n \"count\":
65
+ 348,\n \"name\": \"Marketing and Advertising\",\n \"selected\":
66
+ false\n },\n {\n \"code\": \"24\",\n \"count\":
67
+ 312,\n \"name\": \"Consumer Electronics\",\n \"selected\":
68
+ false\n },\n {\n \"code\": \"27\",\n \"count\":
69
+ 206,\n \"name\": \"Retail\",\n \"selected\": false\n
70
+ },\n {\n \"code\": \"109\",\n \"count\":
71
+ 185,\n \"name\": \"Computer Games\",\n \"selected\":
72
+ false\n },\n {\n \"code\": \"8\",\n \"count\":
73
+ 171,\n \"name\": \"Telecommunications\",\n \"selected\":
74
+ false\n },\n {\n \"code\": \"126\",\n \"count\":
75
+ 164,\n \"name\": \"Media Production\",\n \"selected\":
76
+ false\n }\n ]\n },\n \"code\": \"industry\",\n \"name\":
77
+ \"Industry\"\n }]\n },\n \"numResults\": 8450\n}"
78
+ http_version: '1.1'
79
+ recorded_at: Tue, 04 Jun 2013 03:42:37 GMT
80
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,74 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.linkedin.com/v1/company-search?count=5&keywords=apple&start=5
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ X-Li-Format:
11
+ - json
12
+ Authorization:
13
+ - OAuth oauth_consumer_key="mpibxdpwbwry", oauth_nonce="UCRIU2SBembgaUTMw9aBAK0tCDnDuxPG4GzClCmcVQ",
14
+ oauth_signature="46tFOgfxDKiVNID1XIHrpoAs7zA%3D", oauth_signature_method="HMAC-SHA1",
15
+ oauth_timestamp="1365631654", oauth_token="d9f69cd6-f3f3-4c26-9f2c-12cd8e228089",
16
+ oauth_version="1.0"
17
+ User-Agent:
18
+ - OAuth gem v0.4.7
19
+ response:
20
+ status:
21
+ code: 200
22
+ message: OK
23
+ headers:
24
+ X-Li-Request-Id:
25
+ - YMZX3QW2A1
26
+ X-Li-Format:
27
+ - json
28
+ Date:
29
+ - Wed, 10 Apr 2013 22:07:33 GMT
30
+ Vary:
31
+ - ! '*'
32
+ Server:
33
+ - Apache-Coyote/1.1
34
+ Content-Type:
35
+ - application/json;charset=UTF-8
36
+ Transfer-Encoding:
37
+ - chunked
38
+ body:
39
+ encoding: UTF-8
40
+ string: ! "{\n \"companies\": {\n \"_count\": 5,\n \"_start\": 5,\n \"_total\":
41
+ 8450,\n \"values\": [\n {\n \"id\": 2135525,\n \"name\":
42
+ \"iSquare - Apple Authorized Distributor in Greece & Cyprus\"\n },\n
43
+ {\n \"id\": 2303504,\n \"name\": \"Filex Apple Store &
44
+ Support\"\n },\n {\n \"id\": 2419290,\n \"name\":
45
+ \"Apple Nieuws Vlaanderen\"\n },\n {\n \"id\": 2260437,\n
46
+ \"name\": \"OGGO - Services Apple Macintosh\"\n },\n {\n
47
+ \"id\": 1049054,\n \"name\": \"Apple Crumble\"\n }\n ]\n
48
+ },\n \"facets\": {\n \"_total\": 1,\n \"values\": [{\n \"buckets\":{\n
49
+ \"_total\": 10,\n \"values\": [\n {\n \"code\":
50
+ \"us:0\",\n \"count\": 2511,\n \"name\": \"United States\",\n
51
+ \"selected\": false\n },\n {\n \"code\":
52
+ \"gb:0\",\n \"count\": 702,\n \"name\": \"United Kingdom\",\n
53
+ \"selected\": false\n },\n {\n \"code\":
54
+ \"us:84\",\n \"count\": 322,\n \"name\": \"San Francisco
55
+ Bay Area\",\n \"selected\": false\n },\n {\n
56
+ \"code\": \"us:70\",\n \"count\": 285,\n \"name\":
57
+ \"Greater New York City Area\",\n \"selected\": false\n },\n
58
+ {\n \"code\": \"nl:0\",\n \"count\": 284,\n
59
+ \"name\": \"Netherlands\",\n \"selected\": false\n
60
+ },\n {\n \"code\": \"ca:0\",\n \"count\":
61
+ 266,\n \"name\": \"Canada\",\n \"selected\": false\n
62
+ },\n {\n \"code\": \"au:0\",\n \"count\":
63
+ 195,\n \"name\": \"Australia\",\n \"selected\": false\n
64
+ },\n {\n \"code\": \"in:0\",\n \"count\":
65
+ 186,\n \"name\": \"India\",\n \"selected\": false\n
66
+ },\n {\n \"code\": \"it:0\",\n \"count\":
67
+ 177,\n \"name\": \"Italy\",\n \"selected\": false\n
68
+ },\n {\n \"code\": \"us:49\",\n \"count\":
69
+ 173,\n \"name\": \"Greater Los Angeles Area\",\n \"selected\":
70
+ false\n }\n ]\n },\n \"code\": \"location\",\n \"name\":
71
+ \"Location\"\n }]\n },\n \"numResults\": 8450\n}"
72
+ http_version: '1.1'
73
+ recorded_at: Tue, 04 Jun 2013 03:42:37 GMT
74
+ recorded_with: VCR 2.5.0
data/spec/helper.rb ADDED
@@ -0,0 +1,34 @@
1
+ $:.unshift File.expand_path('..', __FILE__)
2
+ $:.unshift File.expand_path('../../lib', __FILE__)
3
+ if ENV['COVERAGE'] == 't'
4
+ require 'simplecov'
5
+ SimpleCov.start
6
+ end
7
+
8
+ require 'linkedin'
9
+ require 'rspec'
10
+ require 'webmock/rspec'
11
+ require 'vcr'
12
+
13
+ VCR.configure do |c|
14
+ c.cassette_library_dir = 'spec/fixtures/cassette_library'
15
+ c.hook_into :webmock
16
+ c.ignore_localhost = true
17
+ c.default_cassette_options = { :record => :none }
18
+ c.configure_rspec_metadata!
19
+ end
20
+
21
+ RSpec.configure do |c|
22
+ c.treat_symbols_as_metadata_keys_with_true_values = true
23
+ end
24
+
25
+ def linkedin_url(url)
26
+ url =~ /^http/ ? url : "https://api.linkedin.com#{url}"
27
+ end
28
+
29
+ def expect_post(url, body, result = nil)
30
+ a_request(:post, linkedin_url(url)).with({
31
+ :body => fixture(body).read,
32
+ :headers => { :content_type => 'application/xml' }
33
+ }).should have_been_made.once
34
+ end
metadata ADDED
@@ -0,0 +1,268 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: linkedin-api2
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.1.13
5
+ platform: ruby
6
+ authors:
7
+ - Matthew Kirk
8
+ - Wynn Netherland
9
+ - Josh Kalderimis
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2018-05-27 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hashie
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - "~>"
27
+ - !ruby/object:Gem::Version
28
+ version: '3.0'
29
+ - !ruby/object:Gem::Dependency
30
+ name: multi_json
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - "~>"
34
+ - !ruby/object:Gem::Version
35
+ version: '1.0'
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '1.0'
43
+ - !ruby/object:Gem::Dependency
44
+ name: oauth
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '0.4'
50
+ type: :runtime
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: '0.4'
57
+ - !ruby/object:Gem::Dependency
58
+ name: rake
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '10'
64
+ type: :development
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: '10'
71
+ - !ruby/object:Gem::Dependency
72
+ name: yard
73
+ requirement: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ - !ruby/object:Gem::Dependency
86
+ name: kramdown
87
+ requirement: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ type: :development
93
+ prerelease: false
94
+ version_requirements: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ - !ruby/object:Gem::Dependency
100
+ name: rspec
101
+ requirement: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - "~>"
104
+ - !ruby/object:Gem::Version
105
+ version: '2.13'
106
+ type: :development
107
+ prerelease: false
108
+ version_requirements: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - "~>"
111
+ - !ruby/object:Gem::Version
112
+ version: '2.13'
113
+ - !ruby/object:Gem::Dependency
114
+ name: simplecov
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '0.7'
120
+ type: :development
121
+ prerelease: false
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - "~>"
125
+ - !ruby/object:Gem::Version
126
+ version: '0.7'
127
+ - !ruby/object:Gem::Dependency
128
+ name: vcr
129
+ requirement: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - "~>"
132
+ - !ruby/object:Gem::Version
133
+ version: '2.5'
134
+ type: :development
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - "~>"
139
+ - !ruby/object:Gem::Version
140
+ version: '2.5'
141
+ - !ruby/object:Gem::Dependency
142
+ name: webmock
143
+ requirement: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - "~>"
146
+ - !ruby/object:Gem::Version
147
+ version: '1.11'
148
+ type: :development
149
+ prerelease: false
150
+ version_requirements: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - "~>"
153
+ - !ruby/object:Gem::Version
154
+ version: '1.11'
155
+ description: Ruby wrapper for the LinkedIn API
156
+ email:
157
+ - meteor.kirk@gmail.com
158
+ - wynn.netherland@gmail.com
159
+ - josh.kalderimis@gmail.com
160
+ executables: []
161
+ extensions: []
162
+ extra_rdoc_files: []
163
+ files:
164
+ - ".autotest"
165
+ - ".gemtest"
166
+ - ".gitignore"
167
+ - ".rspec"
168
+ - ".travis.yml"
169
+ - ".yardopts"
170
+ - CHANGELOG.md
171
+ - EXAMPLES.md
172
+ - Gemfile
173
+ - LICENSE
174
+ - README.md
175
+ - Rakefile
176
+ - lib/linked_in/api.rb
177
+ - lib/linked_in/api/communications.rb
178
+ - lib/linked_in/api/companies.rb
179
+ - lib/linked_in/api/groups.rb
180
+ - lib/linked_in/api/jobs.rb
181
+ - lib/linked_in/api/people.rb
182
+ - lib/linked_in/api/query_helpers.rb
183
+ - lib/linked_in/api/share_and_social_stream.rb
184
+ - lib/linked_in/client.rb
185
+ - lib/linked_in/errors.rb
186
+ - lib/linked_in/helpers.rb
187
+ - lib/linked_in/helpers/authorization.rb
188
+ - lib/linked_in/helpers/request.rb
189
+ - lib/linked_in/mash.rb
190
+ - lib/linked_in/search.rb
191
+ - lib/linked_in/version.rb
192
+ - lib/linkedin.rb
193
+ - linkedin-api2.gemspec
194
+ - spec/cases/api_spec.rb
195
+ - spec/cases/linkedin_spec.rb
196
+ - spec/cases/mash_spec.rb
197
+ - spec/cases/oauth_spec.rb
198
+ - spec/cases/search_spec.rb
199
+ - spec/fixtures/cassette_library/LinkedIn_Api/Company_API.yml
200
+ - spec/fixtures/cassette_library/LinkedIn_Api/Company_API/should_load_correct_company_data.yml
201
+ - spec/fixtures/cassette_library/LinkedIn_Client/_authorize_from_request/should_return_a_valid_access_token.yml
202
+ - spec/fixtures/cassette_library/LinkedIn_Client/_request_token/with_a_callback_url/should_return_a_valid_access_token.yml
203
+ - spec/fixtures/cassette_library/LinkedIn_Client/_request_token/with_default_options/should_return_a_valid_request_token.yml
204
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_company_name_option/should_perform_a_search.yml
205
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_email_address/should_perform_a_people_search.yml
206
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_first_name_and_last_name_options/should_perform_a_search.yml
207
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_first_name_and_last_name_options_with_fields/should_perform_a_search.yml
208
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_keywords_string_parameter/should_perform_a_search.yml
209
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_multiple_email_address/should_perform_a_multi-email_search.yml
210
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_single_keywords_option/should_perform_a_search.yml
211
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_single_keywords_option_with_pagination/should_perform_a_search.yml
212
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/email_search_returns_unauthorized/should_raise_an_unauthorized_error.yml
213
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_keywords_options_with_fields/should_perform_a_search.yml
214
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_keywords_string_parameter/should_perform_a_company_search.yml
215
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option/should_perform_a_company_search.yml
216
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option_with_facets_to_return/should_return_a_facet.yml
217
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option_with_pagination/should_perform_a_search.yml
218
+ - spec/helper.rb
219
+ homepage: http://github.com/hexgnu/linkedin
220
+ licenses:
221
+ - MIT
222
+ metadata: {}
223
+ post_install_message:
224
+ rdoc_options: []
225
+ require_paths:
226
+ - lib
227
+ required_ruby_version: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - ">="
230
+ - !ruby/object:Gem::Version
231
+ version: '0'
232
+ required_rubygems_version: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ requirements: []
238
+ rubyforge_project:
239
+ rubygems_version: 2.5.1
240
+ signing_key:
241
+ specification_version: 4
242
+ summary: This gem interfaces with the Linkedin XML and JSON APis
243
+ test_files:
244
+ - spec/cases/api_spec.rb
245
+ - spec/cases/linkedin_spec.rb
246
+ - spec/cases/mash_spec.rb
247
+ - spec/cases/oauth_spec.rb
248
+ - spec/cases/search_spec.rb
249
+ - spec/fixtures/cassette_library/LinkedIn_Api/Company_API.yml
250
+ - spec/fixtures/cassette_library/LinkedIn_Api/Company_API/should_load_correct_company_data.yml
251
+ - spec/fixtures/cassette_library/LinkedIn_Client/_authorize_from_request/should_return_a_valid_access_token.yml
252
+ - spec/fixtures/cassette_library/LinkedIn_Client/_request_token/with_a_callback_url/should_return_a_valid_access_token.yml
253
+ - spec/fixtures/cassette_library/LinkedIn_Client/_request_token/with_default_options/should_return_a_valid_request_token.yml
254
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_company_name_option/should_perform_a_search.yml
255
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_email_address/should_perform_a_people_search.yml
256
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_first_name_and_last_name_options/should_perform_a_search.yml
257
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_first_name_and_last_name_options_with_fields/should_perform_a_search.yml
258
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_keywords_string_parameter/should_perform_a_search.yml
259
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_multiple_email_address/should_perform_a_multi-email_search.yml
260
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_single_keywords_option/should_perform_a_search.yml
261
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/by_single_keywords_option_with_pagination/should_perform_a_search.yml
262
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search/email_search_returns_unauthorized/should_raise_an_unauthorized_error.yml
263
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_keywords_options_with_fields/should_perform_a_search.yml
264
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_keywords_string_parameter/should_perform_a_company_search.yml
265
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option/should_perform_a_company_search.yml
266
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option_with_facets_to_return/should_return_a_facet.yml
267
+ - spec/fixtures/cassette_library/LinkedIn_Search/_search_company/by_single_keywords_option_with_pagination/should_perform_a_search.yml
268
+ - spec/helper.rb