---
title: "Enrich a company profile"
method: POST
path: "/enrich_profile/company"
---

# Enrich a company profile

`POST /enrich_profile/company`

## Request

- Base URL: `https://app.bettercontact.rocks/api/v2`
- URL: `https://app.bettercontact.rocks/api/v2/enrich_profile/company`
- Auth: API key in header `X-API-Key`

Look up a single company by domain, LinkedIn URL, or both. Unlike the other endpoints this one is **synchronous**: the profile comes back in the same response, there is no `request_id` to poll.

**This endpoint does not consume credits.**

Authentication accepts either the `X-API-Key` header like every other endpoint, or an `api_key` attribute in the request body.

## Request body

- EnrichCompanyRequest: At least one of `company_domain` or `company_linkedin_url` is required. You can send both.
  - `company_domain` string: Company website or domain.
  - `company_linkedin_url` string: Company LinkedIn page URL.
  - `api_key` string: Your API key. Only needed if you do not send the `X-API-Key` header.

## Response `200`

Company found.

- object
  - `success` boolean
  - `data` CompanyProfile: The company profile. Fields below carry data; every other `company_*` key from the Lead Finder payload is still present and always `null`, kept for payload compatibility. Landbase-only attributes such as `revenue`, `is_b2b` and `technologies_used` are not returned here.
    - `company_id` integer: BetterContact internal company identifier.
    - `company_name` string: Company name.
    - `company_domain` string: Company domain.
    - `company_website` string: Company website. Same value as `company_domain`.
    - `company_description` string: Company description.
    - `company_linkedin_url` string: Company LinkedIn page URL.
    - `company_industry` string: Company industry.
    - `company_type` string: Company type, lowercased with spaces replaced by underscores. `Privately Held` becomes `privately_held`.
    - `company_founded_year` integer: Year the company was founded.
    - `company_employees_number` integer: Employee count.
    - `company_employees_range_start` integer: Lower bound of the headcount range, parsed from the size range. `11-50` gives `11`.
    - `company_employees_range_end` integer, nullable: Upper bound of the headcount range. `null` on open ended ranges: `10000+` sets the start only.
    - `company_headquarters` string: Full headquarters address.
    - `company_head_quarters_city` string: Headquarters city. May be an empty string when the source has no city.
    - `company_head_quarters_country` string: Headquarters country.
    - `company_address_city` string: City part of the headquarters address.
    - `company_address_state` string: State or region part of the headquarters address.
    - `company_address_country` string: Country part of the headquarters address.
    - `company_address_zipcode` string: Postal code part of the headquarters address.
    - `company_keywords` string[]: Keywords associated with the company.

## Other responses

- `401`: Unauthorized. The API key is missing, invalid or deactivated.
- `404`: No company matched the identifier you sent.
- `422`: Neither `company_domain` nor `company_linkedin_url` was provided.
- `500`: Unexpected error on our side, or an upstream failure. Safe to retry.

## Changes

- **2026-11-03** `cd9044a26697`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/bettercontact/apis/bettercontact-api/changes/enrich_profile/company/post.md)

---

[API](https://skmtc.dev/bettercontact/apis/bettercontact-api.md) - [All operations](https://skmtc.dev/bettercontact/apis/bettercontact-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bettercontact/apis/bettercontact-api/revisions/cd9044a26697?raw)
