Skip to content

Endpoints // Enrichment

Enrich company

Updated

Get a company's full profile from a domain.

POST/v2/enrich/companies

Introduction

The Enrich Company endpoint returns a company's full profile from a domain.

This endpoint costs 2 credits, charged only when a company is found. The full profile is included, with no extra credit. A not-found response (404) is always free: no credits are consumed.

Authorization

NameTypeRequiredDescription
apikeystringYesYour API key from the developer dashboard. Pass it via Authorization: Bearer YOUR_API_KEY header.

Request body

NameTypeRequiredDescription
domainstringYesCompany domain to look up. A bare domain or a full URL works (e.g. acme.com or https://acme.com).
fullProfilebooleanNoDeprecated and ignored. Enrich always returns the full profile, so this field no longer changes the response or the cost. It is still accepted so existing requests keep working, and you can remove it.

Response structure

The company is returned nested under data.company, and data.isFullProfile tells you which shape it has.

Full profile

data.company is the full company profile: the same company shape as /v2/fetch/companies, with full-profile fields such as description, specialities, headquarter, locations, foundedOn, logoUrl and phone. The full shape uses the fetch naming, so the company name is returned as companyName. It also keeps the enrich fields name (the same company name), companyUpdateDate and location.

The full profile is a superset of the light enrich shape: every light field keeps its name, its place and its type, and the full-profile fields are added next to them. An integration built on the light shape keeps working unchanged.

The complete full-profile field reference is documented on the Company Profile endpoint.

Light fallback

In rare cases the full profile cannot be retrieved in time. The response then has data.isFullProfile set to false, and data.company contains only the light shape: id, name, publicId, linkedinId, linkedinUrl, industry, tagline, websiteUrl, employeesCount, followersCount, employeeCountRange, companyUpdateDate and location. The request still costs 2 credits.

To complete a light result, call the Company Profile endpoint (/v2/fetch/companies, 1 credit for a cached profile) with the id or the linkedinUrl returned in data.company:

JSON
{
  "id": "com_01jbd5vewyenebxgaz869ffe5t"
}
FieldTypeDescription
successbooleantrue if the request was processed successfully
errornullAlways null on success
dataobject

The response payload (null on error responses)

Show child attributes
FieldTypeDescription
isFullProfilebooleantrue when company is the full profile. false when only the light shape could be returned in time (see Light fallback)
companyobject

The matched company: the full profile, or the light shape when isFullProfile is false

Show child attributes
FieldTypeDescription
idstringInternal identifier for the company (com_...). Pass it as id to the Company Profile endpoint to fetch this company again
companyNamestringCompany name
namestringCompany name, same value as companyName
publicIdstringUniversal name / slug (the /company/xxx part of the URL)
linkedinIdstring | nullSocial identifier of the company
linkedinUrlstring | nullFull Social company URL
websiteUrlstring | nullOfficial company website URL
industrystring | nullIndustry (e.g. "Software Development")
descriptionstring | nullFull company description
taglinestring | nullShort company tagline
logoUrlstring | nullLogo image URL
backgroundUrlstring | nullBackground / banner image URL
employeesCountnumber | nullExact number of employees
followersCountnumber | nullNumber of followers on the company profile
specialitiesstringList of company specialties
phonestring | nullPhone number
companyUpdateDatestring | nullWhen the record was last refreshed (ISO 8601)
headquarterobject

Headquarter location (null if unknown)

Show child attributes
FieldTypeDescription
street1string | nullPrimary street address line
street2string | nullSecondary street address line
postalCodestring | nullPostal code
citystring | nullCity
geographicAreastring | nullState or region
countrystring | nullCountry (ISO code or name)
locationsobject[]

All office locations registered on the profile (can be empty)

Show child attributes
FieldTypeDescription
street1string | nullStreet address line 1
street2string | nullStreet address line 2
postalCodestring | nullPostal / ZIP code
citystring | nullCity
statestring | nullState or region (named state here, not geographicArea as in headquarter)
countrystring | nullCountry ISO 3166 code (e.g. "US", "FR")
foundedOnobject

Founding year (null if unknown)

Show child attributes
FieldTypeDescription
yearnumberFour-digit year
employeeCountRangeobject

Estimated employee count range (null if unknown)

Show child attributes
FieldTypeDescription
startnumberLower bound of the employee range
endnumberUpper bound of the employee range
locationobject

Geographic location (null if unknown)

Show child attributes
FieldTypeDescription
citystringCity
countrystringISO country code (e.g. "FR")
quotasobject

Credits and rate limit usage after this request

Show child attributes
FieldTypeDescription
creditsConsumednumberCredits consumed by this request
workspaceobject

Workspace-level limits

Show child attributes
FieldTypeDescription
idstringYour workspace identifier
hasUnlimitedCreditsbooleanWhether workspace credits are unlimited
allowDailyOvercostbooleanWhether the workspace may exceed its daily cap
creditsobject

Credit balance

Show child attributes
FieldTypeDescription
totalnumberTotal credits in your plan
usednumberCredits consumed so far
leftnumberRemaining credits
dailyLimitobject

Daily request limit (null if not configured)

Show child attributes
FieldTypeDescription
limitnumberMaximum requests per day
usednumberRequests made today
leftnumberRemaining requests today
nextResetstringWhen the daily window resets (ISO 8601)
minuteRateLimitobject

Per-minute rate limit

Show child attributes
FieldTypeDescription
limitnumberMaximum requests per minute
usednumberRequests made in the current minute
leftnumberRemaining requests in the current minute
nextResetstringWhen the minute window resets (ISO 8601)
keyobject

API key-level limits (null when request is from dashboard)

Show child attributes
FieldTypeDescription
idstringAPI key identifier
dailyLimitobject

Daily limit for this key (null if not configured)

Show child attributes
FieldTypeDescription
limitnumberMaximum requests per day
usednumberRequests made today
leftnumberRemaining requests today
nextResetstringWhen the daily window resets (ISO 8601)
minuteRateLimitobject

Minute rate limit for this key

Show child attributes
FieldTypeDescription
limitnumberMaximum requests per minute
usednumberRequests made in the current minute
leftnumberRemaining requests in the current minute
nextResetstringWhen the minute window resets (ISO 8601)
metadataobject

Request tracking information

Show child attributes
FieldTypeDescription
requestIdstringUnique identifier for this request
executionTimeMsnumberTotal execution time in milliseconds

Code examples

Code Examples

const response = await fetch("https://api.reversecontact.com/v2/enrich/companies", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    domain: "reversecontact.com"
  })
});

const { data } = await response.json();
console.log(data.company.name, data.company.industry);

Example response

200 - Success

Example Response

{
  "success": true,
  "data": {
    "company": {
      "id": "com_01jbd5vewyenebxgaz869ffe5t",
      "companyName": "Reverse Contact",
      "linkedinId": "89181966",
      "publicId": "reverse-contact",
      "linkedinUrl": "https://www.social.com/company/reverse-contact",
      "employeesCount": 19,
      "followersCount": 2075,
      "employeeCountRange": {
        "start": 11,
        "end": 50
      },
      "websiteUrl": "https://www.reversecontact.com",
      "tagline": "The first reverse email and phone lookup powered by LinkedIn data",
      "description": "We are pioneers in live web scraping and data solutions, empowering AI applications to harness the power of real-time information.",
      "industry": "Software Development",
      "phone": null,
      "specialities": [
        "Lead Generation",
        "Lead Qualification",
        "Market Search",
        "Competitor analysis",
        "CRM enrichment"
      ],
      "headquarter": {
        "street1": "25, Rue de Tolbiac",
        "street2": null,
        "postalCode": "75013",
        "city": "Paris",
        "geographicArea": "Île-de-France",
        "country": "FR"
      },
      "logoUrl": "https://media.licdn.com/dms/image/v2/C4D0BAQ.../logo.jpg",
      "foundedOn": {
        "year": 2020
      },
      "locations": [
        {
          "street1": "25, Rue de Tolbiac",
          "street2": null,
          "postalCode": "75013",
          "city": "Paris",
          "state": "Île-de-France",
          "country": "FR"
        }
      ],
      "backgroundUrl": "https://media.licdn.com/dms/image/v2/D5616AQ.../background.jpg",
      "name": "Reverse Contact",
      "companyUpdateDate": "2026-04-07T14:22:17.271Z",
      "location": {
        "city": "Paris",
        "country": "FR"
      }
    },
    "isFullProfile": true
  },
  "error": null,
  "metadata": {
    "requestId": "req_c1o2m3p4a5n6",
    "executionTimeMs": 1120
  },
  "quotas": {
    "creditsConsumed": 2,
    "workspace": {
      "id": "ws_abc123",
      "credits": {
        "total": 10000,
        "used": 4537,
        "left": 5463
      },
      "dailyLimit": null,
      "minuteRateLimit": {
        "limit": 60,
        "used": 9,
        "left": 51,
        "nextReset": "2025-01-20T14:16:00.000Z"
      },
      "hasUnlimitedCredits": false,
      "allowDailyOvercost": false
    },
    "key": {
      "id": "key_abc123",
      "dailyLimit": null,
      "minuteRateLimit": {
        "limit": 60,
        "used": 9,
        "left": 51,
        "nextReset": "2025-01-20T14:16:00.000Z"
      }
    }
  }
}