> ## Documentation Index
> Fetch the complete documentation index at: https://docs.userpilot.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Identify Company

> Identify and update company profiles in real time or in bulk using Userpilot's HTTP API.

The Identify Company API allows you to create or update company profiles in real time, either individually or in bulk. Use this API to keep your company data in sync with Userpilot for analytics, segmentation, and B2B engagement.

<Warning>
  **PII Data Notice**

  Before passing any Personally Identifiable Information (PII) such as names, emails, or other sensitive user data to Userpilot:

  * **Security & Compliance:** Verify internally with your legal, security, and compliance teams that doing so aligns with your organization's data privacy policies and applicable regulations (e.g., GDPR, CCPA).

  * **Data Type Mapping:** Ensure correct data type mapping for all properties. Userpilot supports String, Numeric, and Date types. Make sure dates are in ISO8601 format and numeric values are properly formatted. Incorrect type mapping can cause issues with segmentation, analytics, and debugging.

  * **Debugging:** Proper data formatting is crucial for effective debugging and troubleshooting. Verify that your data maps correctly to Userpilot's expected formats before implementation.
</Warning>

## Individual Identify

### Endpoint

```http theme={null}
[POST] https://analytex.userpilot.io/v1/companies/identify
```

<Note>
  The endpoint URL uses the `analytex` environment. For EU data residency, use
  `analytex-eu` instead. See [Environment
  Settings](https://run.userpilot.io/environment) for your specific endpoint.
</Note>

{" "}

### Headers

| Header          | Value                               | Required |
| --------------- | ----------------------------------- | -------- |
| `Content-Type`  | `application/json`                  | Yes      |
| `Authorization` | `Token {YOUR_API_KEY}`              | Yes      |
| `Accept`        | `application/json, text/plain, */*` | Yes      |

### Request Body

| Field        | Type   | Required | Description                                                         |
| ------------ | ------ | -------- | ------------------------------------------------------------------- |
| `company_id` | string | Yes      | Unique identifier for the company                                   |
| `metadata`   | object | No       | Key-value pairs describing the company (e.g., name, industry, etc.) |

### Example

```json theme={null}
{
  "company_id": "company_001",
  "metadata": {
    "name": "Acme Corporation",
    "industry": "SaaS",
    "plan": "Enterprise",
    "monthly_spend": 1000
  }
}
```

### Response

A successful identification returns HTTP status code 200 OK.

<Warning>
  The `company_id` field is required. Metadata values must be primitive types (string, number, boolean, null).
</Warning>

***

## Bulk Operations

For bulk company identification and updates, see the dedicated documentation:

[**Bulk Identify Companies**](https://docs.userpilot.com/api-references/bulk-updates/companies#bulk-identify-update-companies) - For bulk company operations

These articles provide comprehensive details on endpoints, authentication, request/response examples, limitations, best practices, and troubleshooting for large-scale data synchronization.

***
