---
title: "Unarchive Customer Competitor"
method: POST
path: "/copilot/v1/customer-competitors/{competitorId}/actions/unarchive"
tags: ["Customer Competitors"]
---

# Unarchive Customer Competitor

`POST /copilot/v1/customer-competitors/{competitorId}/actions/unarchive`

## Request

- Base URL: `https://api.zoominfo.com/gtm`
- URL: `https://api.zoominfo.com/gtm/copilot/v1/customer-competitors/{competitorId}/actions/unarchive`
- Auth: OAuth 2
  - Authorization code: `https://login.zoominfo.com`
  - Token URL: `https://okta-login.zoominfo.com/oauth2/default/v1/token` scopes: `api:gtm-config:manage`

Restores a previously archived Customer Competitor.
Unarchiving makes the competitor visible again in standard list responses and allows it to be used again in competitive intelligence workflows.
When a competitor is restored, the metadata fields `archivedAt` and `archivedBy` are cleared.
If the specified `competitorId` does not exist, the endpoint returns **404 Not Found**.

Common use cases
- Reactivate competitors that are relevant again
- Restore archived competitive intelligence records
- Re-enable competitors for GTM analysis

## Path parameters

- `competitorId` string, uuid, required

## Response `200`

Success

- CustomerCompetitorModel: API model for a single Customer Competitor.
  - `data` CustomerCompetitor, required: Customer Competitor resource.
    - `id` string, required: The unique identifier for the resource
    - `type` string, required: The type of the resource
    - `attributes` CustomerCompetitorAttributes, required: Attributes that define a Customer Competitor — a company that competes with the customer in the market.
      - `name` string: Name of the competitor company. Required when creating a new record. When provided (for create or update), must be between 1 and 1024 characters.
      - `description` string: Detailed description of the competitor, including market position, strengths, and relevance to the customer's business. Maximum 10,000 characters.
      - `url` string, uri: URL of the competitor's website. Maximum 1024 characters.
      - `competitorProducts` string: Description of the products or services this competitor offers that overlap with the customer's portfolio. Maximum 10,000 characters.
      - `reasonsTheyWin` string: Analysis of why this competitor wins deals, covering key strengths, differentiators, and advantages in competitive situations. Maximum 10,000 characters.
      - `reasonsTheyLose` string: Analysis of why this competitor loses deals, covering weaknesses, gaps, and areas where the customer holds an advantage. Maximum 10,000 characters.
      - `customersWeWon` string: Accounts that the customer has won from this competitor. Useful for case-study development and competitive proof points. Maximum 10,000 characters.
      - `competitiveProducts` string: The customer's own products that directly compete with this competitor's products or services. Useful for competitive mapping and battle-card generation. Maximum 10,000 characters.
      - `source` 'manual' | 'import' | 'system' | 'mcp': Source type indicating how a GTM configuration record was created or last modified. Used across all customer-level entities for audit provenance tracking. When source is explicitly set in a request, the corresponding created_by/updated_by must also be provided. Defaults to 'manual' when not specified.
      - `customFields` CustomFieldItem[]: Flexible key-value store for customer-specific custom fields and extended metadata. The backend validates schema and value types. Use this to capture additional competitor intelligence beyond the standard fields.
        - `title` string, required: The display title of the custom field.
        - `description` string: An optional description of the field. Defaults to an empty string in the backend.
        - `value` string, required: The string value associated with this custom field.
    - `meta` GtmConfigAuditFields: Common audit fields present on all customer-level GTM configuration entities. These fields track the full lifecycle of a record including creation, modification, archival (temporary hiding), and soft deletion (permanent hiding for compliance). A record can be active, deleted only, or both.
      - `createdAt` string, date-time: ISO 8601 timestamp when the record was originally created. Auto-populated by backend.
      - `updatedAt` string, date-time: ISO 8601 timestamp of the most recent modification to the record. Auto-populated by backend.
      - `createdBy` string: User ID of the person who created the record. Extracted from the JWT token on creation.
      - `updatedBy` string: User ID of the person who last modified the record. Extracted from the JWT token on update.
      - `archivedAt` string, date-time: ISO 8601 timestamp when the record was archived. Archived records are identified by archivedAt and archivedBy
      - `archivedBy` string: User ID of the person who archived the record

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests

---

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