crunchbase-ruby-library 0.1.7 → 0.3.1
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/.rubocop.yml +66 -0
- data/.rubocop_todo.yml +47 -0
- data/.travis.yml +12 -0
- data/Gemfile +4 -0
- data/README.md +44 -54
- data/Rakefile +4 -1
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/crunchbase-ruby-library.gemspec +15 -12
- data/lib/crunchbase.rb +12 -3
- data/lib/crunchbase/api.rb +110 -102
- data/lib/crunchbase/client.rb +50 -0
- data/lib/crunchbase/exception.rb +13 -11
- data/lib/crunchbase/model.rb +50 -48
- data/lib/crunchbase/model/acquired_by.rb +23 -20
- data/lib/crunchbase/model/acquiree.rb +2 -1
- data/lib/crunchbase/model/acquirer.rb +2 -1
- data/lib/crunchbase/model/acquisition.rb +16 -19
- data/lib/crunchbase/model/address.rb +4 -6
- data/lib/crunchbase/model/advisory_role.rb +2 -2
- data/lib/crunchbase/model/board_members_and_advisor.rb +10 -9
- data/lib/crunchbase/model/category.rb +6 -7
- data/lib/crunchbase/model/competitor.rb +3 -2
- data/lib/crunchbase/model/current_team.rb +7 -11
- data/lib/crunchbase/model/customer.rb +3 -2
- data/lib/crunchbase/model/degree.rb +4 -5
- data/lib/crunchbase/model/entity.rb +98 -108
- data/lib/crunchbase/model/error.rb +3 -4
- data/lib/crunchbase/model/featured_team.rb +19 -0
- data/lib/crunchbase/model/founded_company.rb +2 -3
- data/lib/crunchbase/model/founder.rb +3 -4
- data/lib/crunchbase/model/fund.rb +8 -11
- data/lib/crunchbase/model/fund_raise.rb +7 -8
- data/lib/crunchbase/model/funding_round.rb +29 -24
- data/lib/crunchbase/model/headquarter.rb +2 -1
- data/lib/crunchbase/model/image.rb +6 -7
- data/lib/crunchbase/model/investment.rb +20 -27
- data/lib/crunchbase/model/investor.rb +6 -7
- data/lib/crunchbase/model/ipo.rb +12 -12
- data/lib/crunchbase/model/job.rb +11 -10
- data/lib/crunchbase/model/location.rb +20 -11
- data/lib/crunchbase/model/member.rb +3 -4
- data/lib/crunchbase/model/membership.rb +7 -8
- data/lib/crunchbase/model/new.rb +5 -6
- data/lib/crunchbase/model/office.rb +3 -4
- data/lib/crunchbase/model/organization.rb +39 -38
- data/lib/crunchbase/model/organization_summary.rb +7 -8
- data/lib/crunchbase/model/owned_by.rb +4 -5
- data/lib/crunchbase/model/parent_location.rb +3 -3
- data/lib/crunchbase/model/past_team.rb +7 -11
- data/lib/crunchbase/model/person.rb +53 -46
- data/lib/crunchbase/model/person_summary.rb +13 -14
- data/lib/crunchbase/model/primary_affiliation.rb +6 -6
- data/lib/crunchbase/model/primary_image.rb +3 -3
- data/lib/crunchbase/model/primary_location.rb +8 -7
- data/lib/crunchbase/model/product.rb +14 -13
- data/lib/crunchbase/model/product_summary.rb +4 -5
- data/lib/crunchbase/model/school.rb +3 -2
- data/lib/crunchbase/model/search.rb +39 -40
- data/lib/crunchbase/model/search_result.rb +7 -6
- data/lib/crunchbase/model/simple_organization.rb +9 -10
- data/lib/crunchbase/model/sub_organization.rb +3 -4
- data/lib/crunchbase/model/video.rb +4 -5
- data/lib/crunchbase/model/website.rb +7 -11
- data/lib/crunchbase/request.rb +8 -0
- data/lib/crunchbase/request/client.rb +69 -0
- data/lib/crunchbase/version.rb +2 -1
- data/spec/crunchbase.yml.example +2 -2
- data/spec/crunchbase/client_spec.rb +25 -0
- data/spec/crunchbase/data/board_members_and_advisors/facebook.json +462 -0
- data/spec/crunchbase/data/categories/facebook.json +67 -0
- data/spec/crunchbase/data/current_team/facebook.json +4335 -0
- data/spec/crunchbase/data/featured_team/facebook.json +286 -0
- data/spec/crunchbase/data/funding_rounds/37bd05f961af726ba3c1b279da842805.json +484 -0
- data/spec/crunchbase/data/funding_rounds/facebook.json +2049 -0
- data/spec/crunchbase/data/headquarters/facebook.json +50 -0
- data/spec/crunchbase/data/investors/facebook.json +776 -0
- data/spec/crunchbase/data/news/facebook.json +1426 -0
- data/spec/crunchbase/data/news/facebook_2.json +1426 -0
- data/spec/crunchbase/data/offices/facebook.json +50 -0
- data/spec/crunchbase/data/organizations/crunchbase.json +2845 -0
- data/spec/crunchbase/data/organizations/ekohe.json +654 -0
- data/spec/crunchbase/data/organizations/facebook-without-relationships.json +45 -0
- data/spec/crunchbase/data/organizations/facebook.json +6723 -0
- data/spec/crunchbase/data/organizations/mx-media-llc.json +7 -0
- data/spec/crunchbase/data/past_team/facebook.json +4336 -0
- data/spec/crunchbase/data/people/facebook_founders.json +148 -0
- data/spec/crunchbase/data/people/mark-zuckerberg.json +2602 -0
- data/spec/crunchbase/data/websites/facebook.json +74 -0
- data/spec/crunchbase/model/board_members_and_advisor_spec.rb +39 -11
- data/spec/crunchbase/model/category_spec.rb +47 -0
- data/spec/crunchbase/model/current_team_spec.rb +50 -0
- data/spec/crunchbase/model/featured_team_spec.rb +40 -0
- data/spec/crunchbase/model/founders_spec.rb +49 -0
- data/spec/crunchbase/model/fund_raise_spec.rb +4 -24
- data/spec/crunchbase/model/funding_round_spec.rb +75 -32
- data/spec/crunchbase/model/headquarter_spec.rb +37 -0
- data/spec/crunchbase/model/investment_spec.rb +4 -15
- data/spec/crunchbase/model/investor_spec.rb +37 -0
- data/spec/crunchbase/model/new_spec.rb +86 -0
- data/spec/crunchbase/model/office_spec.rb +29 -9
- data/spec/crunchbase/model/organization_spec.rb +160 -34
- data/spec/crunchbase/model/past_team_spec.rb +36 -14
- data/spec/crunchbase/model/person_spec.rb +21 -19
- data/spec/crunchbase/model/product_spec.rb +4 -31
- data/spec/crunchbase/model/search_spec.rb +25 -49
- data/spec/crunchbase/model/website_spec.rb +36 -9
- data/spec/crunchbase/support/api_helper.rb +19 -0
- data/spec/spec_helper.rb +14 -4
- metadata +103 -6
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Image <
|
|
5
|
-
|
|
5
|
+
class Image < Entity
|
|
6
6
|
RESOURCE_LIST = 'images'
|
|
7
7
|
|
|
8
8
|
attr_reader :asset_path, :asset_url, :content_type, :height, :width, :filesize, :created_at, :updated_at
|
|
9
|
-
|
|
9
|
+
|
|
10
10
|
def property_keys
|
|
11
|
-
%w
|
|
11
|
+
%w(
|
|
12
12
|
asset_url asset_path content_type height width filesize created_at updated_at
|
|
13
|
-
|
|
13
|
+
)
|
|
14
14
|
end
|
|
15
|
-
|
|
16
15
|
end
|
|
17
|
-
end
|
|
16
|
+
end
|
|
@@ -1,44 +1,37 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Investment <
|
|
5
|
-
|
|
5
|
+
class Investment < Entity
|
|
6
6
|
RESOURCE_LIST = 'investments'
|
|
7
7
|
|
|
8
|
-
attr_reader :money_invested, :money_invested_currency_code, :money_invested_usd, :
|
|
8
|
+
attr_reader :money_invested, :money_invested_currency_code, :money_invested_usd, :is_lead_investor,
|
|
9
|
+
:announced_on, :announced_on_trust_code, :created_at, :updated_at
|
|
9
10
|
|
|
10
|
-
attr_reader :
|
|
11
|
+
attr_reader :investors, :partners, :funding_round
|
|
12
|
+
attr_reader :investors_total_items, :partners_total_items, :funding_round_total_items
|
|
11
13
|
|
|
12
14
|
def initialize(json)
|
|
13
|
-
super
|
|
14
|
-
|
|
15
|
-
unless (relationships = json['relationships']).nil?
|
|
16
|
-
instance_relationships_object(Crunchbase::Model::FundingRound, 'funding_round', relationships['funding_round'])
|
|
17
|
-
|
|
18
|
-
if relationships['investors'].kind_of?(Array)
|
|
19
|
-
instance_multi_relationships_object(Crunchbase::Model::Investor, 'investors', relationships['investors'])
|
|
20
|
-
else
|
|
21
|
-
instance_relationships_object(Crunchbase::Model::Investor, 'investors', relationships['investors'])
|
|
22
|
-
end unless relationships['investors'].nil?
|
|
23
|
-
end
|
|
15
|
+
super(json)
|
|
24
16
|
end
|
|
25
17
|
|
|
26
18
|
def property_keys
|
|
27
|
-
%w
|
|
19
|
+
%w(
|
|
28
20
|
money_invested money_invested_currency_code money_invested_usd created_at updated_at
|
|
29
|
-
|
|
21
|
+
is_lead_investor
|
|
22
|
+
)
|
|
30
23
|
end
|
|
31
24
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
multi_items = []
|
|
35
|
-
|
|
36
|
-
items.each do |item|
|
|
37
|
-
multi_items << object_name.new(item || nil)
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
instance_variable_set "@#{key}", multi_items
|
|
25
|
+
def date_keys
|
|
26
|
+
%w(announced_on)
|
|
41
27
|
end
|
|
42
28
|
|
|
29
|
+
def relationship_lists
|
|
30
|
+
{
|
|
31
|
+
'funding_round' => FundingRound,
|
|
32
|
+
'investors' => Organization,
|
|
33
|
+
'partners' => Person
|
|
34
|
+
}
|
|
35
|
+
end
|
|
43
36
|
end
|
|
44
|
-
end
|
|
37
|
+
end
|
|
@@ -1,24 +1,23 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Investor <
|
|
5
|
-
|
|
5
|
+
class Investor < Entity
|
|
6
6
|
RESOURCE_LIST = 'investors'
|
|
7
7
|
|
|
8
8
|
attr_reader :object
|
|
9
9
|
|
|
10
10
|
def initialize(json)
|
|
11
|
-
instance_relationships_object(
|
|
12
|
-
instance_relationships_object(
|
|
11
|
+
instance_relationships_object(Person, 'object', json) if json['type'] == 'Person'
|
|
12
|
+
instance_relationships_object(Organization, 'object', json) if json['type'] == 'Organization'
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def person?
|
|
16
|
-
(object.type_name ==
|
|
16
|
+
(object.type_name == 'Person')
|
|
17
17
|
end
|
|
18
18
|
|
|
19
19
|
def organization?
|
|
20
|
-
(object.type_name ==
|
|
20
|
+
(object.type_name == 'Organization')
|
|
21
21
|
end
|
|
22
|
-
|
|
23
22
|
end
|
|
24
23
|
end
|
data/lib/crunchbase/model/ipo.rb
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Ipo <
|
|
5
|
-
|
|
5
|
+
class Ipo < Entity
|
|
6
6
|
RESOURCE_LIST = RESOURCE_NAME = 'ipos'
|
|
7
7
|
|
|
8
8
|
attr_reader :api_path, :web_path, :went_public_on, :went_public_on_trust_code,
|
|
@@ -17,17 +17,18 @@ module Crunchbase::Model
|
|
|
17
17
|
|
|
18
18
|
def initialize(json)
|
|
19
19
|
super
|
|
20
|
-
|
|
21
|
-
unless (relationships = json['relationships']).nil?
|
|
22
|
-
set_relationships_object(Crunchbase::Model::Organization, 'funded_company', relationships['funded_company'])
|
|
23
|
-
set_relationships_object(Crunchbase::Model::New, 'news', relationships['news'])
|
|
24
|
-
set_relationships_object(Crunchbase::Model::Video, 'videos', relationships['videos'])
|
|
25
|
-
end
|
|
26
20
|
end
|
|
27
21
|
|
|
22
|
+
def relationship_lists
|
|
23
|
+
{
|
|
24
|
+
'funded_company' => Organization,
|
|
25
|
+
'news' => New,
|
|
26
|
+
'videos' => Video
|
|
27
|
+
}
|
|
28
|
+
end
|
|
28
29
|
|
|
29
30
|
def property_keys
|
|
30
|
-
%w
|
|
31
|
+
%w(
|
|
31
32
|
api_path web_path went_public_on went_public_on_trust_code
|
|
32
33
|
stock_exchange_symbol stock_symbol
|
|
33
34
|
shares_sold opening_share_price
|
|
@@ -35,12 +36,11 @@ module Crunchbase::Model
|
|
|
35
36
|
opening_valuation_currency_code opening_valuation_usd
|
|
36
37
|
money_raised money_raised_currency_code money_raised_usd
|
|
37
38
|
created_at updated_at
|
|
38
|
-
|
|
39
|
+
)
|
|
39
40
|
end
|
|
40
41
|
|
|
41
42
|
def date_keys
|
|
42
|
-
%w
|
|
43
|
+
%w(went_public_on)
|
|
43
44
|
end
|
|
44
|
-
|
|
45
45
|
end
|
|
46
46
|
end
|
data/lib/crunchbase/model/job.rb
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Job <
|
|
5
|
-
|
|
5
|
+
class Job < Entity
|
|
6
6
|
RESOURCE_LIST = 'jobs'
|
|
7
7
|
|
|
8
8
|
attr_reader :title, :started_on, :started_on_trust_code, :ended_on, :ended_on_trust_code,
|
|
@@ -12,22 +12,23 @@ module Crunchbase::Model
|
|
|
12
12
|
|
|
13
13
|
def initialize(json)
|
|
14
14
|
super
|
|
15
|
+
end
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
def relationship_lists
|
|
18
|
+
{
|
|
19
|
+
'person' => Person,
|
|
20
|
+
'organization' => Organization
|
|
21
|
+
}
|
|
20
22
|
end
|
|
21
23
|
|
|
22
24
|
def property_keys
|
|
23
|
-
%w
|
|
25
|
+
%w(
|
|
24
26
|
title started_on started_on_trust_code ended_on ended_on_trust_code created_at updated_at
|
|
25
|
-
|
|
27
|
+
)
|
|
26
28
|
end
|
|
27
29
|
|
|
28
30
|
def date_keys
|
|
29
|
-
%w
|
|
31
|
+
%w(started_on ended_on)
|
|
30
32
|
end
|
|
31
|
-
|
|
32
33
|
end
|
|
33
34
|
end
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Location <
|
|
5
|
-
|
|
5
|
+
class Location < Entity
|
|
6
6
|
RESOURCE_LIST = 'locations'
|
|
7
7
|
|
|
8
|
-
attr_reader :web_path, :name, :location_type, :parent_location_uuid,
|
|
8
|
+
attr_reader :web_path, :name, :location_type, :parent_location_uuid,
|
|
9
|
+
:city, :city_web_path,
|
|
10
|
+
:region, :region_code2, :region_web_path,
|
|
11
|
+
:country, :country_code2, :country_code3, :country_web_path,
|
|
12
|
+
:continent, :continent_web_path,
|
|
13
|
+
:created_at, :updated_at
|
|
9
14
|
|
|
10
15
|
attr_reader :parent_locations
|
|
11
16
|
|
|
@@ -13,17 +18,21 @@ module Crunchbase::Model
|
|
|
13
18
|
|
|
14
19
|
def initialize(json)
|
|
15
20
|
super
|
|
21
|
+
end
|
|
16
22
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
23
|
+
def relationship_lists
|
|
24
|
+
{
|
|
25
|
+
'parent_locations' => ParentLocation
|
|
26
|
+
}
|
|
20
27
|
end
|
|
21
|
-
|
|
28
|
+
|
|
22
29
|
def property_keys
|
|
23
|
-
%w
|
|
30
|
+
%w(
|
|
24
31
|
web_path name location_type parent_location_uuid created_at updated_at
|
|
25
|
-
|
|
32
|
+
city city_web_path region region_web_path region_code2
|
|
33
|
+
country country_web_path country_code2 country_code3
|
|
34
|
+
continent continent_web_path
|
|
35
|
+
)
|
|
26
36
|
end
|
|
27
|
-
|
|
28
37
|
end
|
|
29
|
-
end
|
|
38
|
+
end
|
|
@@ -1,24 +1,23 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Membership <
|
|
5
|
-
|
|
5
|
+
class Membership < Organization
|
|
6
6
|
RESOURCE_LIST = 'memberships'
|
|
7
7
|
|
|
8
8
|
attr_reader :object
|
|
9
9
|
|
|
10
10
|
def initialize(json)
|
|
11
|
-
instance_relationships_object(
|
|
12
|
-
instance_relationships_object(
|
|
11
|
+
instance_relationships_object(Person, 'object', json) if json['type'] == 'Person'
|
|
12
|
+
instance_relationships_object(Organization, 'object', json) if json['type'] == 'Organization'
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def person?
|
|
16
|
-
(object.type_name ==
|
|
16
|
+
(object.type_name == 'Person')
|
|
17
17
|
end
|
|
18
18
|
|
|
19
19
|
def organization?
|
|
20
|
-
(object.type_name ==
|
|
20
|
+
(object.type_name == 'Organization')
|
|
21
21
|
end
|
|
22
|
-
|
|
23
22
|
end
|
|
24
|
-
end
|
|
23
|
+
end
|
data/lib/crunchbase/model/new.rb
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class New <
|
|
5
|
-
|
|
5
|
+
class New < Entity
|
|
6
6
|
RESOURCE_LIST = 'news'
|
|
7
7
|
|
|
8
8
|
attr_reader :title, :author, :posted_on, :posted_on_trust_code, :url, :created_at, :updated_at, :type
|
|
9
9
|
|
|
10
10
|
def property_keys
|
|
11
|
-
%w
|
|
11
|
+
%w(
|
|
12
12
|
title author posted_on posted_on_trust_code url created_at updated_at type
|
|
13
|
-
|
|
13
|
+
)
|
|
14
14
|
end
|
|
15
15
|
|
|
16
16
|
def date_keys
|
|
17
|
-
%w
|
|
17
|
+
%w(posted_on)
|
|
18
18
|
end
|
|
19
|
-
|
|
20
19
|
end
|
|
21
20
|
end
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
4
|
module Crunchbase::Model
|
|
4
|
-
class Organization <
|
|
5
|
-
|
|
5
|
+
class Organization < Entity
|
|
6
6
|
RESOURCE_LIST = RESOURCE_NAME = 'organizations'
|
|
7
7
|
|
|
8
8
|
attr_reader :permalink, :api_path, :web_path, :name, :also_known_as, :short_description, :description,
|
|
@@ -14,12 +14,12 @@ module Crunchbase::Model
|
|
|
14
14
|
:number_of_investments, :homepage_url,
|
|
15
15
|
:created_at, :updated_at
|
|
16
16
|
|
|
17
|
-
attr_reader :primary_image, :founders, :current_team, :past_team, :board_members_and_advisors,
|
|
17
|
+
attr_reader :primary_image, :founders, :featured_team, :current_team, :past_team, :board_members_and_advisors,
|
|
18
18
|
:investors, :owned_by, :sub_organizations, :headquarters, :offices, :products,
|
|
19
19
|
:categories, :customers, :competitors, :members, :memberships, :funding_rounds, :investments,
|
|
20
20
|
:acquisitions, :acquired_by, :ipo, :funds, :websites, :images, :videos, :news
|
|
21
21
|
|
|
22
|
-
attr_reader :primary_image_total_items, :founders_total_items, :current_team_total_items,
|
|
22
|
+
attr_reader :primary_image_total_items, :founders_total_items, :featured_team_total_items, :current_team_total_items,
|
|
23
23
|
:past_team_total_items, :board_members_and_advisors_total_items, :investors_total_items,
|
|
24
24
|
:owned_by_total_items, :sub_organizations_total_items, :headquarters_total_items,
|
|
25
25
|
:offices_total_items, :products_total_items, :categories_total_items,
|
|
@@ -30,40 +30,11 @@ module Crunchbase::Model
|
|
|
30
30
|
:videos_total_items, :news_total_items
|
|
31
31
|
|
|
32
32
|
def initialize(json)
|
|
33
|
-
super
|
|
34
|
-
|
|
35
|
-
unless (relationships = json['relationships']).nil?
|
|
36
|
-
|
|
37
|
-
set_relationships_object(Crunchbase::Model::PrimaryImage, 'primary_image', relationships['primary_image'])
|
|
38
|
-
set_relationships_object(Crunchbase::Model::Founder, 'founders', relationships['founders'])
|
|
39
|
-
set_relationships_object(Crunchbase::Model::CurrentTeam, 'current_team', relationships['current_team'])
|
|
40
|
-
set_relationships_object(Crunchbase::Model::PastTeam, 'past_team', relationships['past_team'])
|
|
41
|
-
set_relationships_object(Crunchbase::Model::BoardMembersAndAdvisor, 'board_members_and_advisors', relationships['board_members_and_advisors'])
|
|
42
|
-
set_relationships_object(Crunchbase::Model::Investor, 'investors', relationships['investors'])
|
|
43
|
-
set_relationships_object(Crunchbase::Model::OwnedBy, 'owned_by', relationships['owned_by'])
|
|
44
|
-
set_relationships_object(Crunchbase::Model::SubOrganization, 'sub_organizations', relationships['sub_organizations'])
|
|
45
|
-
set_relationships_object(Crunchbase::Model::Headquarter, 'headquarters', relationships['headquarters'])
|
|
46
|
-
set_relationships_object(Crunchbase::Model::Office, 'offices', relationships['offices'])
|
|
47
|
-
set_relationships_object(Crunchbase::Model::Product, 'products', relationships['products'])
|
|
48
|
-
set_relationships_object(Crunchbase::Model::Category, 'categories', relationships['categories'])
|
|
49
|
-
set_relationships_object(Crunchbase::Model::Customer, 'customers', relationships['customers'])
|
|
50
|
-
set_relationships_object(Crunchbase::Model::Competitor, 'competitors', relationships['competitors'])
|
|
51
|
-
set_relationships_object(Crunchbase::Model::Membership, 'memberships', relationships['memberships'])
|
|
52
|
-
set_relationships_object(Crunchbase::Model::FundingRound, 'funding_rounds', relationships['funding_rounds'])
|
|
53
|
-
set_relationships_object(Crunchbase::Model::Investment, 'investments', relationships['investments'])
|
|
54
|
-
set_relationships_object(Crunchbase::Model::Acquisition, 'acquisitions', relationships['acquisitions'])
|
|
55
|
-
set_relationships_object(Crunchbase::Model::AcquiredBy, 'acquired_by', relationships['acquired_by'])
|
|
56
|
-
set_relationships_object(Crunchbase::Model::Ipo, 'ipo', relationships['ipo'])
|
|
57
|
-
set_relationships_object(Crunchbase::Model::Fund, 'funds', relationships['funds'])
|
|
58
|
-
set_relationships_object(Crunchbase::Model::Website, 'websites', relationships['websites'])
|
|
59
|
-
set_relationships_object(Crunchbase::Model::Image, 'images', relationships['images'])
|
|
60
|
-
set_relationships_object(Crunchbase::Model::Video, 'videos', relationships['videos'])
|
|
61
|
-
set_relationships_object(Crunchbase::Model::New, 'news', relationships['news'])
|
|
62
|
-
end
|
|
33
|
+
super(json)
|
|
63
34
|
end
|
|
64
35
|
|
|
65
36
|
def property_keys
|
|
66
|
-
%w
|
|
37
|
+
%w(
|
|
67
38
|
permalink api_path web_path name also_known_as short_description description
|
|
68
39
|
profile_image_url primary_role role_company role_investor role_group role_school
|
|
69
40
|
founded_on founded_on_trust_code is_closed closed_on closed_on_trust_code
|
|
@@ -71,12 +42,42 @@ module Crunchbase::Model
|
|
|
71
42
|
stock_exchange stock_symbol
|
|
72
43
|
number_of_investments homepage_url
|
|
73
44
|
created_at updated_at
|
|
74
|
-
|
|
45
|
+
)
|
|
75
46
|
end
|
|
76
47
|
|
|
77
|
-
def
|
|
78
|
-
|
|
48
|
+
def relationship_lists
|
|
49
|
+
{
|
|
50
|
+
'primary_image' => PrimaryImage,
|
|
51
|
+
'founders' => Founder,
|
|
52
|
+
'featured_team' => FeaturedTeam,
|
|
53
|
+
'current_team' => CurrentTeam,
|
|
54
|
+
'past_team' => PastTeam,
|
|
55
|
+
'board_members_and_advisors' => BoardMembersAndAdvisor,
|
|
56
|
+
'investors' => Investor,
|
|
57
|
+
'owned_by' => OwnedBy,
|
|
58
|
+
'sub_organizations' => SubOrganization,
|
|
59
|
+
'headquarters' => Headquarter,
|
|
60
|
+
'offices' => Office,
|
|
61
|
+
'products' => Product,
|
|
62
|
+
'categories' => Category,
|
|
63
|
+
'customers' => Customer,
|
|
64
|
+
'competitors' => Competitor,
|
|
65
|
+
'memberships' => Membership,
|
|
66
|
+
'funding_rounds' => FundingRound,
|
|
67
|
+
'investments' => Investment,
|
|
68
|
+
'acquisitions' => Acquisition,
|
|
69
|
+
'acquired_by' => AcquiredBy,
|
|
70
|
+
'ipo' => Ipo,
|
|
71
|
+
'funds' => Fund,
|
|
72
|
+
'websites' => Website,
|
|
73
|
+
'images' => Image,
|
|
74
|
+
'videos' => Video,
|
|
75
|
+
'news' => New
|
|
76
|
+
}
|
|
79
77
|
end
|
|
80
78
|
|
|
79
|
+
def date_keys
|
|
80
|
+
%w(founded_on closed_on)
|
|
81
|
+
end
|
|
81
82
|
end
|
|
82
83
|
end
|