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

# Tipos de Chave API

> Entenda os dois tipos de chaves API no Topsort e quando usar cada uma para diferentes endpoints.

export const LastUpdated = ({date, lang = "en"}) => {
  const translations = {
    en: "Last updated:",
    es: "Última actualización:",
    pt: "Última atualização:",
    fr: "Dernière mise à jour:",
    de: "Zuletzt aktualisiert:"
  };
  const label = translations[lang] || translations.en;
  return <>
<style>{`
.last-updated-component {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 16px;
border-radius: 8px;
margin-top: 12px;
margin-bottom: 16px;
font-size: 14px;
background-color: rgba(0, 0, 0, 0.05);
border: 1px solid rgba(0, 0, 0, 0.12);
color: rgba(0, 0, 0, 0.75);
line-height: 1;
}

        .last-updated-component svg {
          flex-shrink: 0;
          vertical-align: middle;
        }

        .last-updated-component span {
          display: inline-flex !important;
          align-items: center !important;
          line-height: 1 !important;
        }

        [data-theme="dark"] .last-updated-component {
          background-color: #3a3a3a;
          border: 2px solid #888888;
          color: #ffffff;
        }

        [data-theme="dark"] .last-updated-component svg {
          stroke: #ffffff;
        }
      `}</style>
      <div className="last-updated-component">
        <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
          <circle cx="12" cy="12" r="10" />
          <polyline points="12 6 12 12 16 14" />
        </svg>
        <span>
          <strong style={{
    fontWeight: 600
  }}>{label}</strong> 
          <time dateTime={date}>{date}</time>
        </span>
      </div>
    </>;
};

O Topsort usa dois tipos de chaves API para diferentes propósitos.

## Referência Rápida

| Tipo de Chave           | Propósito                                                     |
| ----------------------- | ------------------------------------------------------------- |
| **Marketplace API Key** | Endpoints de leilão e evento                                  |
| **Advanced API Key**    | Sincronização de catálogo, campanhas, relatórios, faturamento |

<Note>
  A maioria das integrações precisa de **ambos** os tipos de chave: uma chave Advanced para sincronização de catálogo, campanhas e relatórios, e uma chave Marketplace para leilões e eventos.
</Note>

## Qual Chave Eu Preciso?

| Endpoint                              | Tipo de Chave |
| ------------------------------------- | ------------- |
| `POST /v2/auctions`                   | Marketplace   |
| `POST /v2/events`                     | Marketplace   |
| `/public/v1/catalog-search-service/*` | Advanced      |
| `/public/v1/campaign-service/*`       | Advanced      |
| `/public/v1/reporting-service/*`      | Advanced      |
| `/public/v1/billing-service/*`        | Advanced      |

## Erros Comuns

### 401 Unauthorized

```json theme={null}
{
  "error": "Unauthorized",
  "message": "Invalid or missing API key"
}
```

**Causas:**

* Chave API não incluída no cabeçalho `Authorization`
* A chave está malformada ou expirada
* Usando chave Advanced em endpoint exclusivo do Marketplace

**Correção:** Verifique o formato do cabeçalho: `Authorization: Bearer YOUR_API_KEY`

### 403 Forbidden

```json theme={null}
{
  "error": "Forbidden", 
  "message": "Insufficient permissions"
}
```

**Causas:**

* Usando uma chave Advanced em um endpoint que requer uma chave Marketplace
* Usando uma chave Marketplace em um endpoint que requer uma chave Advanced

**Correção:** Use o tipo de chave que corresponde ao endpoint — consulte [Qual Chave Eu Preciso?](#qual-chave-eu-preciso) acima

## Como Obter Suas Chaves

### Marketplace API Key

<Steps>
  <Step title="Acessar o Topsort Admin">
    Faça login no seu painel de administração do Topsort
  </Step>

  <Step title="Navegar para Configurações de API">
    Vá para **Configurações** → **Integração de API**
  </Step>

  <Step title="Criar Chave API">
    Clique em **"Gerar chave API"** e selecione **"Marketplace API key"**
  </Step>

  <Step title="Copiar e Armazenar">
    Copie a chave imediatamente e armazene-a com segurança (é mostrada apenas uma vez)
  </Step>
</Steps>

### Advanced API Key

<Steps>
  <Step title="Acessar o Topsort Admin">
    Faça login no seu painel de administração do Topsort
  </Step>

  <Step title="Navegar para Configurações de API">
    Vá para **Configurações** → **Acesso à API**
  </Step>

  <Step title="Gerar Chave">
    Clique em **"Gerar Chave"** para criar sua chave Advanced API
  </Step>

  <Step title="Copiar e Armazenar">
    Copie a chave e armazene-a com segurança em suas variáveis de ambiente
  </Step>
</Steps>

## Melhores Práticas de Segurança

* **Nunca confirme chaves no controle de versão**
* **Armazene chaves em variáveis de ambiente**
* **Rotacione as chaves regularmente**
* **Use chaves diferentes para diferentes ambientes (dev, staging, produção)**
* **Restrinja o acesso às chaves apenas aos membros da equipe necessários**

<LastUpdated date="2026-06-12" />
