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

# Exclude a company

> Exclude one company from your workspace

Excludes one company. To exclude many at once, use
[Import excluded companies](https://docs.clustr-ai.com/api-reference/import-excluded-companies.md), which
takes up to 500 in one request.

Give at least one key, and as many as you know: different parts of Clustr match
on different ones. The exclusion is checked before a company record exists, which
is how it stops the enrichment rather than only hiding its result.

Excluding a company that is already excluded returns the existing exclusion
rather than a second one. Everything it hides is kept: [remove the exclusion](https://docs.clustr-ai.com/api-reference/remove-excluded-company.md)
and it all comes back.

## Errors

| Status | Code | When |
| - | - | - |
| 400 | `BAD_REQUEST` | No key, a LinkedIn URL that is not a company page, a `companyId` that is not a uuid, or the list already holds 500 companies |

```bash cURL theme={null}
curl -X POST https://api.clustr-ai.com/api/public/excluded-companies \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"label": "Acme Corp", "domain": "acme.com", "linkedinVanityName": "https://www.linkedin.com/company/acme-corp", "reason": "Competitor"}'
```

```json 201 theme={null}
{
  "success": true,
  "data": {
    "excludedCompany": {
      "clustrExcludedCompanyId": "exco_f9nan0w4892z0s7s7kb793038p",
      "clustrWorkspaceId": "ten_93tdpgecrrpwmf19spn5k2cds3",
      "id": "8f1c2d3e-4b5a-4c6d-8e7f-9a0b1c2d3e4f",
      "tenantId": "3b0f6a52-1c9e-4d7a-8f21-5e6c7d8a9b10",
      "linkedinVanityName": "acme-corp",
      "domain": "acme.com",
      "label": "Acme Corp",
      "reason": "Competitor",
      "createdAt": "2026-10-12T09:30:00Z"
    }
  }
}
```

```json 400 theme={null}
{
  "success": false,
  "error": { "message": "That LinkedIn URL is not a company page (linkedin.com/company/...)", "code": "BAD_REQUEST" }
}
```


## OpenAPI

````yaml POST /excluded-companies
openapi: 3.1.0
info:
  title: Clustr Public API
  description: >
    Programmatic access to your Clustr network: import connectors, search warm
    intros (opportunities), and manage target accounts.


    ## Authentication

    All endpoints require a Bearer token (API key) in the `Authorization`
    header.


    ```

    Authorization: Bearer <your_api_key>

    ```


    API keys can be created and managed from the [API settings
    page](https://app.clustr-ai.com/api).
  version: '1.0'
  contact:
    name: Clustr Support
    url: https://clustr-ai.com
servers:
  - url: https://api.clustr-ai.com/api/public
    description: Production
security:
  - BearerAuth: []
paths:
  /excluded-companies:
    post:
      tags:
        - Excluded Companies
      summary: Exclude a company
      description: >
        Exclude one company. Give at least one of `domain`,
        `linkedinVanityName`,

        `linkedinNumericId` or `companyId`, and as many as you know. Excluding a

        company that is already excluded returns the existing exclusion.
      operationId: excludeCompany
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExcludedCompanyInput'
      responses:
        '201':
          description: The exclusion in force
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  data:
                    type: object
                    properties:
                      excludedCompany:
                        $ref: '#/components/schemas/ExcludedCompany'
        '400':
          description: >-
            No key, a LinkedIn URL that is not a company page, or the list
            already holds 500 companies
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Invalid or missing API key
components:
  schemas:
    ExcludedCompanyInput:
      type: object
      description: >-
        One company to exclude. Send at least one of `domain`,
        `linkedinVanityName`, `linkedinNumericId` or `companyId`.
      properties:
        label:
          type: string
          description: >-
            The name shown on the list, for display only. Defaults to the first
            key you give.
          example: Acme Corp
        domain:
          type: string
          description: >
            A domain or website, stored as the bare host:
            `https://www.acme.com/about`

            becomes `acme.com`. A LinkedIn URL sent here is read as
            `linkedinVanityName`.
          example: acme.com
        linkedinVanityName:
          type: string
          description: >-
            The company's LinkedIn slug, or its LinkedIn company page URL

            (`linkedin.com/company/acme-corp`). A LinkedIn URL that is not a
            company page,

            such as a person's profile, is rejected.
          example: https://www.linkedin.com/company/acme-corp
        linkedinNumericId:
          type: string
          example: '1035'
          description: LinkedIn's own numeric id for the company.
        companyId:
          type: string
          description: >-
            The account's Clustr ID (`acc_…`), when you have one. The company id
            from earlier responses also

            works.
        reason:
          type: string
          description: >-
            Why the company is excluded. It is shown on the list, for display
            only.
          example: Competitor
    ExcludedCompany:
      type: object
      properties:
        clustrExcludedCompanyId:
          type: string
          description: >-
            The exclusion's Clustr ID, for example
            `exco_gs55xmz75eekyeen4gcze1vn6d`. Use it to refer to

            this exclusion.
          example: exco_gs55xmz75eekyeen4gcze1vn6d
        clustrWorkspaceId:
          type: string
          description: >-
            The workspace's Clustr ID, for example
            `ten_d7ybajxezg97cghd2y3x7am2qg`.
          example: ten_d7ybajxezg97cghd2y3x7am2qg
        clustrAccountId:
          type: string
          description: >-
            The Clustr ID of the account it matched, for example
            `acc_5x3vqy454qx6m6q2thvk020zmn`. For a

            company Clustr does not know yet, it is filled in once that company
            appears.
          example: acc_5x3vqy454qx6m6q2thvk020zmn
        clustrCreatedByUserId:
          type: string
          description: >-
            The Clustr ID of the member who added it, for example
            `usr_z21gb6gp5qg90dfrsf5hb5dfdj`.
          example: usr_z21gb6gp5qg90dfrsf5hb5dfdj
        id:
          type: string
          format: uuid
          description: >-
            Kept for integrations built before Clustr IDs. New integrations
            should use `clustrExcludedCompanyId`.
        tenantId:
          type: string
          format: uuid
          description: >-
            Kept for integrations built before Clustr IDs. New integrations
            should use `clustrWorkspaceId`.
        companyId:
          type: string
          description: >-
            Kept for integrations built before Clustr IDs. New integrations
            should use `clustrAccountId`.
        linkedinNumericId:
          type: string
          example: '1035'
        linkedinVanityName:
          type: string
          description: The LinkedIn company slug, lower-cased.
          example: acme-corp
        domain:
          type: string
          description: The bare host, without scheme, `www.` or path.
          example: acme.com
        label:
          type: string
          description: The name shown on the list, for display only.
          example: Acme Corp
        reason:
          type: string
          example: Competitor
        createdBy:
          type: string
          description: >-
            Kept for integrations built before Clustr IDs. New integrations
            should use `clustrCreatedByUserId`.
        createdAt:
          type: string
          format: date-time
    ErrorResponse:
      type: object
      required:
        - success
        - error
      properties:
        success:
          type: boolean
          example: false
        error:
          type: object
          properties:
            message:
              type: string
              example: Invalid request body
            code:
              type: string
              example: BAD_REQUEST
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: The API key you created on the API settings page of the Clustr app.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.