crunchbase-api 0.2.1 → 0.3.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.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/README.md +4 -2
- data/lib/crunchbase-api.rb +2 -1
- data/lib/crunchbase-api/entity.rb +1 -1
- data/lib/crunchbase-api/funding_round.rb +6 -2
- data/lib/crunchbase-api/organization.rb +6 -3
- data/lib/crunchbase-api/relation.rb +9 -5
- data/lib/crunchbase-api/version.rb +1 -1
- data/test/crunchbase-api/funding_round_test.rb +1 -1
- data/test/crunchbase-api/organization_test.rb +3 -3
- data/test/crunchbase-api/person_test.rb +3 -4
- data/test/crunchbase-api/product_test.rb +3 -3
- metadata +21 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 454449a132d13dc6d108564384aea64a81781f08
|
4
|
+
data.tar.gz: 01dcbd9ccf761493666d3bb403ec5ff60f5c484a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8fd0b0da58fd9e343d02f4209f62846d94cf71806bc01d38d4490a25b573354be1d30a1751d80b50480a74e115dea44e1baf210ea440c171603321ac83deefbf
|
7
|
+
data.tar.gz: 6fb8ba1976c56cba0906c1578d544bc4eecde4f5c19df8bf731162cb9b908177752c1369306460ff7a5032f1e3a8516555d4193213497502dbfcdcb63e9e2c35
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -63,7 +63,9 @@ Failed requests (such as the ones requesting non-existent entities) will throw `
|
|
63
63
|
```ruby
|
64
64
|
Crunchbase::Organization.get(permalink)
|
65
65
|
```
|
66
|
-
Properties: `name`, `permalink`, `description`, `short_description`, `homepage_url`, `founded_on`, `is_closed`, `closed_on`, `primary_role`, `total_funding_usd`, `number_of_investments`, `number_of_employees`,
|
66
|
+
Properties: `name`, `permalink`, `description`, `short_description`, `homepage_url`, `founded_on`, `is_closed`, `closed_on`, `primary_role`, `total_funding_usd`, `number_of_investments`, `number_of_employees`,
|
67
|
+
`stock_symbol`, `stock_exchange`, `role_company`, `founded_on_trust_code`, `closed_on_trust_code`, `headquarters`, `board_members_and_advisors`, `categories`, `current_team`, `customers`, `images`, `investments`,
|
68
|
+
`members`, `news`, `offices`, `past_team`, `primary_image`, `sub_organizations`, `websites`, `created_at`, `updated_at`.
|
67
69
|
|
68
70
|
Relationships: `competitors`, `funding_rounds`, `founders`, `products`, `acquisitions`, `ipo`.
|
69
71
|
|
@@ -110,7 +112,7 @@ Crunchbase::Product.list(page, order)
|
|
110
112
|
```ruby
|
111
113
|
Crunchbase::FundingRound.get(uuid)
|
112
114
|
```
|
113
|
-
Properties: `name`, `permalink`, `funding_type`, `money_raised`, `money_raised_currency_code`,
|
115
|
+
Properties: `name`, `permalink`, `funding_type`, `money_raised`, `money_raised_usd`, `money_raised_currency_code`, `announced_on`, `announced_on_trust_code`, `canonical_currency_code`, `series`, `created_at`, `updated_at`.
|
114
116
|
|
115
117
|
Relationships: `funded_organization`.
|
116
118
|
|
data/lib/crunchbase-api.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'uri'
|
2
|
+
require 'cgi'
|
2
3
|
require 'net/http'
|
3
4
|
require 'json'
|
4
5
|
|
@@ -27,7 +28,7 @@ module Crunchbase
|
|
27
28
|
def fetch(resource, data = {})
|
28
29
|
data[:user_key] = self.user_key
|
29
30
|
uri_str = "#{self.api_endpoint}/#{resource}?"
|
30
|
-
uri_str << data.map { |k, v| "#{
|
31
|
+
uri_str << data.map { |k, v| "#{CGI::escape(k.to_s)}=#{CGI::escape(v.to_s)}" }.join('&')
|
31
32
|
|
32
33
|
begin
|
33
34
|
uri = URI.parse(uri_str)
|
@@ -8,11 +8,14 @@ module Crunchbase
|
|
8
8
|
attr_reader :permalink
|
9
9
|
attr_reader :funding_type
|
10
10
|
attr_reader :money_raised
|
11
|
+
attr_reader :money_raised_usd
|
11
12
|
attr_reader :money_raised_currency_code
|
12
13
|
attr_reader :announced_on
|
14
|
+
attr_reader :announced_on_trust_code
|
13
15
|
attr_reader :canonical_currency_code
|
14
16
|
attr_reader :created_at
|
15
17
|
attr_reader :updated_at
|
18
|
+
attr_reader :series
|
16
19
|
|
17
20
|
attr_reader :funded_organization
|
18
21
|
|
@@ -25,7 +28,8 @@ module Crunchbase
|
|
25
28
|
def property_keys
|
26
29
|
%w[
|
27
30
|
name permalink funding_type money_raised money_raised_currency_code
|
28
|
-
announced_on canonical_currency_code created_at updated_at
|
31
|
+
announced_on canonical_currency_code created_at updated_at series
|
32
|
+
announced_on_trust_code money_raised_usd
|
29
33
|
]
|
30
34
|
end
|
31
35
|
|
@@ -39,4 +43,4 @@ module Crunchbase
|
|
39
43
|
|
40
44
|
end
|
41
45
|
|
42
|
-
end
|
46
|
+
end
|
@@ -21,6 +21,9 @@ module Crunchbase
|
|
21
21
|
attr_reader :stock_exchange
|
22
22
|
attr_reader :created_at
|
23
23
|
attr_reader :updated_at
|
24
|
+
attr_reader :role_company
|
25
|
+
attr_reader :founded_on_trust_code
|
26
|
+
attr_reader :closed_on_trust_code
|
24
27
|
|
25
28
|
|
26
29
|
attr_reader :competitors
|
@@ -45,7 +48,6 @@ module Crunchbase
|
|
45
48
|
attr_reader :websites
|
46
49
|
|
47
50
|
|
48
|
-
|
49
51
|
def self.get(permalink)
|
50
52
|
self.fetch_one permalink
|
51
53
|
end
|
@@ -72,6 +74,7 @@ module Crunchbase
|
|
72
74
|
%w[
|
73
75
|
description short_description founded_on permalink primary_role is_closed closed_on homepage_url
|
74
76
|
name created_at updated_at total_funding_usd number_of_investments number_of_employees stock_symbol stock_exchange
|
77
|
+
role_company founded_on_trust_code closed_on_trust_code
|
75
78
|
]
|
76
79
|
end
|
77
80
|
|
@@ -81,10 +84,10 @@ module Crunchbase
|
|
81
84
|
|
82
85
|
def relationships
|
83
86
|
%w[
|
84
|
-
competitors funding_rounds founders products acquisitions ipo
|
87
|
+
competitors funding_rounds founders products acquisitions ipo
|
85
88
|
]
|
86
89
|
end
|
87
90
|
|
88
91
|
end
|
89
92
|
|
90
|
-
end
|
93
|
+
end
|
@@ -7,24 +7,28 @@ module Crunchbase
|
|
7
7
|
attr_reader :path
|
8
8
|
attr_reader :created_at
|
9
9
|
attr_reader :updated_at
|
10
|
+
attr_reader :money_invested
|
11
|
+
attr_reader :money_invested_usd
|
12
|
+
attr_reader :money_raised_currency_code
|
13
|
+
attr_reader :investors
|
10
14
|
|
11
15
|
def initialize(data)
|
12
16
|
@type = data['type']
|
13
17
|
@name = data['name']
|
14
18
|
@path = data['path']
|
15
|
-
@created_at = Time.at(data['created_at']) unless data['created_at'].nil?
|
16
|
-
@updated_at = Time.at(data['updated_at']) unless data['updated_at'].nil?
|
19
|
+
@created_at = Time.at(data['created_at'].to_i) unless data['created_at'].nil?
|
20
|
+
@updated_at = Time.at(data['updated_at'].to_i) unless data['updated_at'].nil?
|
17
21
|
end
|
18
22
|
|
19
23
|
def fetch
|
20
24
|
supported_relations = %w[Organization Person Product FundingRound Acquisition Ipo]
|
21
|
-
unless supported_relations.include?(@type)
|
25
|
+
unless supported_relations.include?(@type.capitalize)
|
22
26
|
raise CrunchbaseException, "Fetching of '#{@type}' relations is not supported at this time"
|
23
27
|
end
|
24
28
|
result = Crunchbase.fetch @path
|
25
|
-
Crunchbase.const_get(@type).new result
|
29
|
+
Crunchbase.const_get(@type.capitalize).new result
|
26
30
|
end
|
27
31
|
|
28
32
|
end
|
29
33
|
|
30
|
-
end
|
34
|
+
end
|
@@ -41,9 +41,9 @@ describe 'Organization', :vcr do
|
|
41
41
|
|
42
42
|
it 'should retrieve a list of organizations' do
|
43
43
|
c = Crunchbase::Organization.list
|
44
|
-
c.size.must_equal
|
44
|
+
c.size.must_equal 5000
|
45
45
|
c.first.must_be_instance_of Crunchbase::Relation
|
46
|
-
c.first.type.must_equal '
|
46
|
+
c.first.type.must_equal 'organization'
|
47
47
|
c.first.name.wont_be_empty
|
48
48
|
c.first.path.wont_be_empty
|
49
49
|
c.first.created_at.must_be_instance_of Time
|
@@ -92,4 +92,4 @@ describe 'Organization', :vcr do
|
|
92
92
|
c.ipo.first.path.wont_be_empty
|
93
93
|
end
|
94
94
|
|
95
|
-
end
|
95
|
+
end
|
@@ -9,7 +9,6 @@ describe 'Person', :vcr do
|
|
9
9
|
c.permalink.must_equal 'steve-jobs'
|
10
10
|
c.bio.wont_be_empty
|
11
11
|
c.born_on.must_equal Date.new(1955, 2, 24)
|
12
|
-
c.died_on.must_equal Date.new(2011, 10, 5)
|
13
12
|
c.is_deceased.must_equal true
|
14
13
|
c.location_uuid.wont_be_empty
|
15
14
|
c.created_at.must_be_instance_of Time
|
@@ -18,9 +17,9 @@ describe 'Person', :vcr do
|
|
18
17
|
|
19
18
|
it 'should retrieve a list of people' do
|
20
19
|
c = Crunchbase::Person.list
|
21
|
-
c.size.must_equal
|
20
|
+
c.size.must_equal 5000
|
22
21
|
c.first.must_be_instance_of Crunchbase::Relation
|
23
|
-
c.first.type.must_equal '
|
22
|
+
c.first.type.must_equal 'person'
|
24
23
|
c.first.name.wont_be_empty
|
25
24
|
c.first.path.wont_be_empty
|
26
25
|
c.first.created_at.must_be_instance_of Time
|
@@ -49,4 +48,4 @@ describe 'Person', :vcr do
|
|
49
48
|
c.founded_companies.first.path.wont_be_empty
|
50
49
|
end
|
51
50
|
|
52
|
-
end
|
51
|
+
end
|
@@ -13,9 +13,9 @@ describe 'Product', :vcr do
|
|
13
13
|
|
14
14
|
it 'should retrieve a list of products' do
|
15
15
|
c = Crunchbase::Product.list
|
16
|
-
c.size.must_equal
|
16
|
+
c.size.must_equal 5000
|
17
17
|
c.first.must_be_instance_of Crunchbase::Relation
|
18
|
-
c.first.type.must_equal '
|
18
|
+
c.first.type.must_equal 'product'
|
19
19
|
c.first.name.wont_be_empty
|
20
20
|
c.first.path.wont_be_empty
|
21
21
|
c.first.created_at.must_be_instance_of Time
|
@@ -35,4 +35,4 @@ describe 'Product', :vcr do
|
|
35
35
|
c.name.must_equal 'Digg'
|
36
36
|
end
|
37
37
|
|
38
|
-
end
|
38
|
+
end
|
metadata
CHANGED
@@ -1,111 +1,111 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: crunchbase-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sandis Klakovskis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '1.6'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.6'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - '>='
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - '>='
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: webmock
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - '>='
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: minitest
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - '>='
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - '>='
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: vcr
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - '>='
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - '>='
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: minitest-vcr
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - '>='
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - '>='
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
description: ''
|
@@ -115,8 +115,8 @@ executables: []
|
|
115
115
|
extensions: []
|
116
116
|
extra_rdoc_files: []
|
117
117
|
files:
|
118
|
-
-
|
119
|
-
-
|
118
|
+
- .gitignore
|
119
|
+
- .travis.yml
|
120
120
|
- Gemfile
|
121
121
|
- LICENSE.txt
|
122
122
|
- README.md
|
@@ -153,17 +153,17 @@ require_paths:
|
|
153
153
|
- lib
|
154
154
|
required_ruby_version: !ruby/object:Gem::Requirement
|
155
155
|
requirements:
|
156
|
-
- -
|
156
|
+
- - '>='
|
157
157
|
- !ruby/object:Gem::Version
|
158
158
|
version: '0'
|
159
159
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
160
|
requirements:
|
161
|
-
- -
|
161
|
+
- - '>='
|
162
162
|
- !ruby/object:Gem::Version
|
163
163
|
version: '0'
|
164
164
|
requirements: []
|
165
165
|
rubyforge_project:
|
166
|
-
rubygems_version: 2.
|
166
|
+
rubygems_version: 2.0.14
|
167
167
|
signing_key:
|
168
168
|
specification_version: 4
|
169
169
|
summary: Wrapper for Crunchbase API v2
|