The Companies API companies API
The companies API from The Companies API — 13 operation(s) for companies.
The companies API from The Companies API — 13 operation(s) for companies.
openapi: 3.1.0
info:
contact:
email: support@thecompaniesapi.com
name: The Companies API
url: https://www.thecompaniesapi.com
description: An enrichment platform to search and retrieve information about companies
termsOfService: https://www.thecompaniesapi.com/product/terms
title: The actions companies API
version: 2.0.0
servers:
- description: Production server
url: https://api.thecompaniesapi.com
tags:
- name: companies
paths:
/v2/companies:
get:
description: Search companies using a segmentation query.
operationId: searchCompanies
tags:
- companies
security:
- apiKey: []
parameters:
- schema:
type: number
required: false
name: actionId
in: query
- schema:
type: string
required: false
name: domainsToExclude
in: query
- schema:
type: string
required: false
name: linkedinToExclude
in: query
- schema:
type: number
required: false
name: page
in: query
- schema:
type: array
items:
$ref: '#/components/schemas/SegmentationCondition'
required: false
name: query
in: query
- schema:
type: string
required: false
name: search
in: query
- schema:
type: array
items:
type: string
enum:
- about.name
- domain.domain
required: false
name: searchFields
in: query
- schema:
type: boolean
required: false
name: simplified
in: query
- schema:
type: number
minimum: 1
maximum: 100
required: false
name: size
in: query
- schema:
type: array
items:
type: object
properties:
key:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
missing:
type: string
enum:
- _first
- _last
order:
type: string
enum:
- asc
- desc
required:
- key
- order
required: false
name: sortFields
in: query
- schema:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
required: false
name: sortKey
in: query
- schema:
type: string
enum:
- asc
- desc
required: false
name: sortOrder
in: query
responses:
'200':
description: Search companies using a segmentation query.
content:
application/json:
schema:
type: object
properties:
companies:
type: array
items:
$ref: '#/components/schemas/CompanyV2'
meta:
$ref: '#/components/schemas/PaginationMeta'
query:
type: array
items:
$ref: '#/components/schemas/SegmentationCondition'
required:
- companies
- meta
- query
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
post:
description: Search companies using a segmentation query.
operationId: searchCompaniesPost
tags:
- companies
security:
- apiKey: []
requestBody:
content:
application/json:
schema:
type: object
properties:
actionId:
type: number
domainsToExclude:
type: string
linkedinToExclude:
type: string
page:
type: number
query:
type: array
items:
$ref: '#/components/schemas/SegmentationCondition'
search:
type: string
searchFields:
type: array
items:
type: string
enum:
- about.name
- domain.domain
simplified:
type: boolean
size:
type: number
minimum: 1
maximum: 100
sortFields:
type: array
items:
type: object
properties:
key:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
missing:
type: string
enum:
- _first
- _last
order:
type: string
enum:
- asc
- desc
required:
- key
- order
sortKey:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
sortOrder:
type: string
enum:
- asc
- desc
responses:
'200':
description: Search companies using a segmentation query.
content:
application/json:
schema:
type: object
properties:
companies:
type: array
items:
$ref: '#/components/schemas/CompanyV2'
meta:
$ref: '#/components/schemas/PaginationMeta'
query:
type: array
items:
$ref: '#/components/schemas/SegmentationCondition'
required:
- companies
- meta
- query
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
/v2/companies/{domain}:
get:
description: Get a single company data by its domain.
operationId: fetchCompany
tags:
- companies
security:
- apiKey: []
parameters:
- schema:
type: string
required: true
name: domain
in: path
- schema:
type: boolean
required: false
name: refresh
in: query
- schema:
type: boolean
required: false
name: simplified
in: query
responses:
'200':
description: Get a single company data by its domain.
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyV2'
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'404':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- companyNotFound
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
/v2/companies/by-name:
get:
description: Search companies by name.
operationId: searchCompaniesByName
tags:
- companies
security:
- apiKey: []
parameters:
- schema:
type: string
required: false
name: countries
in: query
- schema:
type: boolean
required: false
name: exactWordsMatch
in: query
- schema:
type: string
required: false
name: listsToExclude
in: query
- schema:
type: string
required: true
name: name
in: query
- schema:
type: number
required: false
name: page
in: query
- schema:
type: array
items:
type: string
enum:
- about.name
- domain.domain
required: false
name: searchFields
in: query
- schema:
type: boolean
required: false
name: simplified
in: query
- schema:
type: number
minimum: 1
maximum: 25
required: false
name: size
in: query
- schema:
type: array
items:
type: object
properties:
key:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
missing:
type: string
enum:
- _first
- _last
order:
type: string
enum:
- asc
- desc
required:
- key
- order
required: false
name: sortFields
in: query
- schema:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
required: false
name: sortKey
in: query
- schema:
type: string
enum:
- asc
- desc
required: false
name: sortOrder
in: query
responses:
'200':
description: Search companies by name.
content:
application/json:
schema:
type: object
properties:
companies:
type: array
items:
$ref: '#/components/schemas/CompanyV2'
meta:
$ref: '#/components/schemas/PaginationMeta'
required:
- companies
- meta
'400':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- companyNameEmpty
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
/v2/companies/by-prompt:
get:
description: Search companies by prompt.
operationId: searchCompaniesByPrompt
tags:
- companies
security:
- apiKey: []
parameters:
- schema:
type: string
required: false
name: listsToExclude
in: query
- schema:
type: number
required: false
name: page
in: query
- schema:
type: string
required: true
name: prompt
in: query
- schema:
type: number
minimum: 0
maximum: 2
required: false
name: similarity
in: query
- schema:
type: boolean
required: false
name: simplified
in: query
- schema:
type: number
minimum: 1
maximum: 50
required: false
name: size
in: query
- schema:
type: array
items:
type: object
properties:
key:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
missing:
type: string
enum:
- _first
- _last
order:
type: string
enum:
- asc
- desc
required:
- key
- order
required: false
name: sortFields
in: query
- schema:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
required: false
name: sortKey
in: query
- schema:
type: string
enum:
- asc
- desc
required: false
name: sortOrder
in: query
responses:
'200':
description: Search companies by prompt.
content:
application/json:
schema:
type: object
properties:
companies:
type: array
items:
$ref: '#/components/schemas/CompanyV2'
meta:
$ref: '#/components/schemas/PaginationMeta'
required:
- companies
- meta
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
/v2/companies/similar:
get:
description: Get similar companies from one or many domains.
operationId: searchSimilarCompanies
tags:
- companies
security:
- apiKey: []
parameters:
- schema:
type: array
items:
type: string
maxItems: 100
required: true
name: domains
in: query
- schema:
type: number
required: false
name: page
in: query
- schema:
type: number
required: false
name: proximityExact
in: query
- schema:
type: string
enum:
- close
- far
- near
required: false
name: proximityTerm
in: query
- schema:
type: boolean
required: false
name: simplified
in: query
- schema:
type: number
minimum: 1
maximum: 100
required: false
name: size
in: query
- schema:
type: array
items:
type: object
properties:
key:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
missing:
type: string
enum:
- _first
- _last
order:
type: string
enum:
- asc
- desc
required:
- key
- order
required: false
name: sortFields
in: query
- schema:
type: string
enum:
- about.businessType
- about.industries
- about.industry
- about.name
- about.totalEmployees
- about.yearFounded
- analytics.monthlyVisitors
- apps
- codes.naics
- codes.sic
- contacts
- domain.domain
- domain.tld
- finances.revenue
- locations.headquarters.city.code
- locations.headquarters.country.code
- locations.headquarters.county.code
- locations.headquarters.state.code
- meta.score
- meta.syncedAt
- socials
- technologies.active
- urls
required: false
name: sortKey
in: query
- schema:
type: string
enum:
- asc
- desc
required: false
name: sortOrder
in: query
responses:
'200':
description: Get similar companies from one or many domains.
content:
application/json:
schema:
type: object
properties:
companies:
type: array
items:
$ref: '#/components/schemas/CompanyV2'
meta:
$ref: '#/components/schemas/PaginationMeta'
required:
- companies
- meta
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
/v2/companies/count:
get:
description: Get the count of companies using a segmentation query.
operationId: countCompanies
tags:
- companies
security:
- apiKey: []
parameters:
- schema:
type: number
required: false
name: actionId
in: query
- schema:
type: array
items:
$ref: '#/components/schemas/SegmentationCondition'
required: false
name: query
in: query
- schema:
type: string
required: false
name: search
in: query
- schema:
type: array
items:
type: string
enum:
- about.name
- domain.domain
required: false
name: searchFields
in: query
responses:
'200':
description: Get the count of companies using a segmentation query.
content:
application/json:
schema:
type: object
properties:
count:
type: number
required:
- count
'401':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- tokenNotFound
- invalidApiSecret
- missingApiSecret
- userNotAuthenticated
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
'403':
description: The error message
content:
application/json:
schema:
type: object
properties:
details: {}
messages:
type: string
enum:
- noCreditsRemaining
status:
type: number
minimum: 400
maximum: 511
required:
- messages
- status
post:
description: Get the count of companies using a segmentation body.
operationId: countCompaniesPost
tags:
- companies
security:
- apiKey: []
requestBody
# --- truncated at 32 KB (169 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thecompaniesapi/refs/heads/main/openapi/thecompaniesapi-companies-api-openapi.yml