linkedin-api2 1.1.13

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 (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