---
title: "Enrich company"
method: POST
path: "/v2/enrich/companies"
tags: ["Enrich"]
---

# Enrich company

`POST /v2/enrich/companies`

## Request

- Base URL: `https://api.reversecontact.com`
- URL: `https://api.reversecontact.com/v2/enrich/companies`
- Auth: HTTP bearer

Synchronously resolves a company from a domain. Returns the full profile of the matched company nested under data.company, with data.isFullProfile telling whether the full profile could be assembled. Credits: 2 when a company is found, full profile included. 404 is free.

## Request body

- EnrichCompanyBody
  - `domain` string, required: Company domain to resolve (e.g. acme.com)
  - `fullProfile` boolean: Deprecated and ignored: enrich always returns the full profile. Still accepted so existing requests keep working.

## Response `200`

Company enriched successfully

- object
  - `success` true, required
  - `data` EnrichCompanyData, required: Nested under the top-level V2 data field: response.data.company.
    - `company` union, required: Matched company: the full company (data.isFullProfile true), or the light shape when the full company could not be assembled (data.isFullProfile false).
      - EnrichedCompanyFull: Full company profile shape returned by fetch.
        - `id` string: Reverse Contact company id (com_...)
        - `companyName` string: Company display name
        - `linkedinId` string, nullable: Upstream Social company id
        - `publicId` string: Social public slug / universal name
        - `linkedinUrl` string, nullable
        - `employeesCount` integer: Employee count
        - `followersCount` integer: Follower count
        - `employeeCountRange` object, nullable
          - `start` integer
          - `end` integer
        - `websiteUrl` string, nullable
        - `tagline` string, nullable
        - `description` string, nullable
        - `industry` string, nullable
        - `phone` string, nullable
        - `specialities` string[]
        - `headquarter` object, nullable
          - `street1` string, nullable
          - `street2` string, nullable
          - `postalCode` string, nullable
          - `city` string, nullable
          - `geographicArea` string, nullable
          - `country` string, nullable: ISO country code
        - `logoUrl` string, nullable
        - `foundedOn` object, nullable
          - `year` integer
        - `locations` object[]
          - `street1` string, nullable
          - `street2` string, nullable
          - `postalCode` string, nullable
          - `city` string, nullable
          - `state` string, nullable
          - `country` string, nullable: ISO country code
        - `backgroundUrl` string, nullable
        - `name` string: Company display name
        - `companyUpdateDate` string, nullable
        - `location` object, nullable
          - `city` string, nullable
          - `country` string, nullable
      - EnrichedCompanyLight: Light company enrich shape (identity and headline metrics).
        - `id` string, required: Reverse Contact company id (com_...)
        - `name` string, required: Company display name
        - `publicId` string, required: Social public slug / universal name
        - `linkedinId` string, nullable
        - `linkedinUrl` string, nullable
        - `employeesCount` integer, nullable
        - `followersCount` integer, nullable
        - `employeeCountRange` object, nullable
          - `start` integer, nullable
          - `end` integer, nullable
        - `websiteUrl` string, nullable
        - `tagline` string, nullable
        - `industry` string, nullable
        - `companyUpdateDate` string, nullable
        - `location` object, nullable
          - `city` string, nullable
          - `country` string, nullable
    - `isFullProfile` boolean, required: True when data.company is the full company, false when only the light shape could be returned.
  - `error` unknown, required
  - `quotas` V2Quotas, required
    - `creditsConsumed` number, required: Credits used for this request after pricing resolution
    - `workspace` object, required
      - `id` string, required: Workspace identifier
      - `credits` V2Credits, required
        - `total` number, required: Total credits in your plan
        - `used` number, required: Credits consumed so far
        - `left` number, required: Remaining credits
      - `hasUnlimitedCredits` boolean, required: Whether workspace credits are unlimited
      - `allowDailyOvercost` boolean, required: Whether the workspace may exceed its daily cap (Enterprise only)
      - `dailyLimit` V2LimitInfo
        - `limit` integer, required: Maximum allowed in the window
        - `used` integer, required: Amount used in the window
        - `left` integer, required: Remaining in the window
        - `nextReset` string, required: When the window resets (ISO 8601)
      - `minuteRateLimit` V2LimitInfo, required
        - `limit` integer, required: Maximum allowed in the window
        - `used` integer, required: Amount used in the window
        - `left` integer, required: Remaining in the window
        - `nextReset` string, required: When the window resets (ISO 8601)
    - `key` object, nullable, required
      - `id` string, required: API key identifier
      - `dailyLimit` V2LimitInfo
        - `limit` integer, required: Maximum allowed in the window
        - `used` integer, required: Amount used in the window
        - `left` integer, required: Remaining in the window
        - `nextReset` string, required: When the window resets (ISO 8601)
      - `minuteRateLimit` V2LimitInfo, required
        - `limit` integer, required: Maximum allowed in the window
        - `used` integer, required: Amount used in the window
        - `left` integer, required: Remaining in the window
        - `nextReset` string, required: When the window resets (ISO 8601)
      - `creditLimits` object, required: Credit limits set on this API key. Each is null when the key has no such limit.
        - `daily` V2KeyCreditLimit, required
          - `limit` number, required: Credits this key may spend in the period
          - `used` number, required: Credits this key spent in the period, this request included
          - `left` number, required: Credits this key may still spend in the period
          - `nextReset` string, nullable, required: When the period resets (ISO 8601): 00:00 UTC for the daily limit, the 1st of next month at 00:00 UTC for the monthly limit, null for the total limit
        - `monthly` V2KeyCreditLimit, required
          - `limit` number, required: Credits this key may spend in the period
          - `used` number, required: Credits this key spent in the period, this request included
          - `left` number, required: Credits this key may still spend in the period
          - `nextReset` string, nullable, required: When the period resets (ISO 8601): 00:00 UTC for the daily limit, the 1st of next month at 00:00 UTC for the monthly limit, null for the total limit
        - `total` V2KeyCreditLimit, required
          - `limit` number, required: Credits this key may spend in the period
          - `used` number, required: Credits this key spent in the period, this request included
          - `left` number, required: Credits this key may still spend in the period
          - `nextReset` string, nullable, required: When the period resets (ISO 8601): 00:00 UTC for the daily limit, the 1st of next month at 00:00 UTC for the monthly limit, null for the total limit
  - `metadata` V2Metadata, required
    - `requestId` string, required: Unique identifier for this request
    - `executionTimeMs` integer, required: Total execution time in milliseconds
    - `updatedAt` string: Last upstream update timestamp (ISO 8601). Present only when available.

## Other responses

- `400`: Invalid JSON body or endpoint-specific business validation
- `401`: Missing or invalid API key or OAuth access token
- `402`: No credits left. Purchase more to continue.
- `403`: Forbidden: the API key lacks permission for this endpoint, or reached its total credit limit (KEY_CREDIT_LIMIT_REACHED, no reset: raise or reset the limit)
- `404`: Data not found
- `422`: Schema or validation error, unresolved internal id, or disposable email domain
- `429`: Rate limit exceeded, or the API key reached its daily or monthly credit limit (KEY_CREDIT_LIMIT_REACHED). Wait error.details.retryAfter seconds, then retry. The response carries no quotas object.
- `451`: Data subject blocked. The profile has been removed per GDPR/CCPA data subject request.

---

[API](https://skmtc.dev/scrapin/apis/reverse-contact-api.md) - [All operations](https://skmtc.dev/scrapin/apis/reverse-contact-api/llms.txt) - [OpenAPI document](https://skmtc.dev/scrapin/apis/reverse-contact-api/revisions/7d02242af2a9?raw)
