Repository navigation
Expand file tree
/
Copy pathcompany-enrichment.openapi.yaml
More file actions
420 lines (420 loc) · 14.5 KB
/
Copy pathcompany-enrichment.openapi.yaml
File metadata and controls
420 lines (420 loc) · 14.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
openapi: 3.0.3
info:
title: Abstract Company Enrichment API
description: 'Enrich a company domain with firmographic data — company name, description,
logo, address and coordinates, industry classification (SIC/NAICS), employee and
revenue ranges, contact details, social profiles, financial identifiers, tags, and
detected technologies — in a single request. Authenticate with your API key as the
`api_key` query parameter, or as an `Authorization: Bearer <key>` header. GET and
POST (form-encoded or JSON) are both supported.'
version: 1.0.0
termsOfService: https://www.abstractapi.com/legal/legal
contact:
name: Abstract API
url: https://www.abstractapi.com/api/company-enrichment-api
license:
name: Commercial — see Terms of Service
url: https://www.abstractapi.com/legal/legal
externalDocs:
description: Official documentation
url: https://docs.abstractapi.com/api/company-enrichment
servers:
- url: https://companyenrichment.abstractapi.com/v2
security:
- ApiKeyQuery: []
- BearerAuth: []
paths:
/:
get:
operationId: getCompanyEnrichment
summary: Enrich a company by domain
description: 'Returns firmographic data for the company that owns the supplied
domain. The API key may be supplied as the `api_key` query parameter or as an
`Authorization: Bearer <key>` header.'
parameters:
- name: domain
in: query
required: true
description: Domain of the company to enrich.
schema:
type: string
example: airbnb.com
- name: fields
in: query
required: false
description: Optional comma-separated list of top-level JSON keys to return. When
omitted, all available fields are returned.
schema:
type: string
example: company_name,industry,employee_range
responses:
'200':
description: Enrichment details for the requested company.
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyEnrichment'
example:
domain: airbnb.com
company_name: Airbnb
description: Airbnb is a company that provides a wide array of accommodations
for every type of traveler. With over 7 million vacation rentals and
2 million top-rated guest favorites across more than 220 countries and
regions, Airbnb offers a unique and diverse selection of stays worldwide.
logo: https://logo.abstractapi.com/cb6281618-c67a-5004-9c9b-29fc2245a4f7_-airbnb.png
year_founded: '2008'
street_address: 888 Brannan Street
city: San Francisco
state: California
country: United States
country_iso_code: US
postal_code: '94103'
latitude: 37.7719568
longitude: -122.4054484
sic_code: '87'
naics_code: '54'
industry: Travel Services
employee_count: '6907'
employee_range: 5K-10K
annual_revenue: '9917000000'
revenue_range: $1B-$10B
phone_numbers:
- '+14155104027'
email_addresses:
- support@airbnb.com
type: public
ticker: ABNB
exchange: XNAS
global_ranking: '7391'
tags:
- Hospitality
- Travel
technologies:
- Google Analytics
- Javascript
- Segment
- Mixpanel
- Branch
- Salesforce
- New Relic
- Facebook Pixel
linkedin_url: linkedin.com/company/airbnb
facebook_url: facebook.com/airbnb
twitter_url: twitter.com/airbnb
instagram_url: instagram.com/airbnb
crunchbase_url: crunchbase.com/organization/airbnb
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'422':
$ref: '#/components/responses/QuotaReached'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/ServerError'
post:
operationId: postCompanyEnrichment
summary: Enrich a company by domain
description: 'Same as the GET operation. The API key may be supplied in the request
body, as the `api_key` query parameter, or as an `Authorization: Bearer <key>`
header.'
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/EnrichmentRequest'
application/json:
schema:
$ref: '#/components/schemas/EnrichmentRequest'
responses:
'200':
description: Enrichment details for the requested company.
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyEnrichment'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'422':
$ref: '#/components/responses/QuotaReached'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/ServerError'
components:
securitySchemes:
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: Your unique Company Enrichment API key.
BearerAuth:
type: http
scheme: bearer
description: Send your API key as a Bearer token; omit `api_key` from the query
string.
responses:
BadRequest:
description: Bad request — a required parameter is missing or failed validation.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error:
message: A validation error occurred.
code: validation_error
details:
domain:
- This is a required argument.
Unauthorized:
description: Unauthorized — missing or invalid API key.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error:
message: Invalid API key provided.
code: unauthorized
details: null
QuotaReached:
description: Unprocessable — monthly quota reached or insufficient API credits.
The body follows the standard error envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
TooManyRequests:
description: Too Many Requests — rate limit exceeded. The body follows the standard
error envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
ServerError:
description: Internal server error. The body follows the standard error envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
EnrichmentRequest:
type: object
required:
- domain
properties:
domain:
type: string
description: Domain of the company to enrich.
example: airbnb.com
fields:
type: string
description: Optional comma-separated list of top-level JSON keys to return.
When omitted, all available fields are returned.
example: company_name,industry,employee_range
api_key:
type: string
description: 'Your API key. Optional here if supplied as the `api_key` query
parameter or an `Authorization: Bearer <key>` header.'
Error:
type: object
required:
- error
properties:
error:
type: object
required:
- message
- code
properties:
message:
type: string
description: Human-readable description of the error.
example: A validation error occurred.
code:
type: string
description: Machine-readable error code, e.g. validation_error or unauthorized.
example: validation_error
details:
type: object
nullable: true
description: Field-keyed validation messages for validation_error responses;
null for other error types.
additionalProperties:
type: array
items:
type: string
CompanyEnrichment:
type: object
properties:
domain:
type: string
description: The domain that was enriched (echoes the input).
example: airbnb.com
company_name:
type: string
nullable: true
description: Company name. Null when unknown.
example: Airbnb
description:
type: string
nullable: true
description: Short description of the company. Null when unknown.
logo:
type: string
nullable: true
description: URL of the company logo. Null when unavailable.
year_founded:
type: string
nullable: true
description: Year the company was founded. Null when unknown.
example: '2008'
street_address:
type: string
nullable: true
description: Street address of the company headquarters. Null when unknown.
city:
type: string
nullable: true
description: City of the company headquarters. Null when unknown.
state:
type: string
nullable: true
description: State or region of the company headquarters. Null when unknown.
country:
type: string
nullable: true
description: Country of the company headquarters. Null when unknown.
country_iso_code:
type: string
nullable: true
description: ISO country code of the company headquarters. Null when unknown.
example: US
postal_code:
type: string
nullable: true
description: Postal or ZIP code of the company headquarters. Null when unknown.
latitude:
type: number
nullable: true
description: Latitude of the company headquarters. Null when unknown.
example: 37.7719568
longitude:
type: number
nullable: true
description: Longitude of the company headquarters. Null when unknown.
example: -122.4054484
sic_code:
type: string
nullable: true
description: Standard Industrial Classification (SIC) code. Null when unknown.
example: '87'
naics_code:
type: string
nullable: true
description: North American Industry Classification System (NAICS) code. Null
when unknown.
example: '54'
industry:
type: string
nullable: true
description: Industry the company operates in. Null when unknown.
example: Travel Services
employee_count:
type: string
nullable: true
description: Estimated number of employees. Null when unknown.
example: '6907'
employee_range:
type: string
nullable: true
description: Estimated employee count range. Null when unknown.
example: 5K-10K
annual_revenue:
type: string
nullable: true
description: Estimated annual revenue. Null when unknown.
example: '9917000000'
revenue_range:
type: string
nullable: true
description: Estimated annual revenue range. Null when unknown.
example: $1B-$10B
phone_numbers:
type: array
nullable: true
description: Known company phone numbers. Null or empty when none are found.
items:
type: string
email_addresses:
type: array
nullable: true
description: Known company email addresses. Null or empty when none are found.
items:
type: string
type:
type: string
nullable: true
description: Whether the company is public or private. Null when unknown.
enum:
- public
- private
example: public
ticker:
type: string
nullable: true
description: Stock ticker symbol for publicly traded companies. Null otherwise.
example: ABNB
exchange:
type: string
nullable: true
description: Stock exchange where the company is listed. Null otherwise.
example: XNAS
global_ranking:
type: string
nullable: true
description: Global web traffic ranking of the company. Null when unknown.
example: '7391'
tags:
type: array
nullable: true
description: Descriptive tags for the company. Null or empty when none are found.
items:
type: string
technologies:
type: array
nullable: true
description: Technologies detected in use by the company. Null or empty when
none are found.
items:
type: string
linkedin_url:
type: string
nullable: true
description: LinkedIn profile URL. Null when unknown.
example: linkedin.com/company/airbnb
facebook_url:
type: string
nullable: true
description: Facebook profile URL. Null when unknown.
example: facebook.com/airbnb
twitter_url:
type: string
nullable: true
description: Twitter/X profile URL. Null when unknown.
example: twitter.com/airbnb
instagram_url:
type: string
nullable: true
description: Instagram profile URL. Null when unknown.
example: instagram.com/airbnb
crunchbase_url:
type: string
nullable: true
description: Crunchbase profile URL. Null when unknown.
example: crunchbase.com/organization/airbnb