# Requisitos de rastreamento de sites para parceiros

Como parceiro, você pode precisar tomar certas medidas, como configurar a identificação do User-Agent, para garantir que os rastreadores de Conformidade Regulada da impact.com possam acessar e recuperar dados do seu site programaticamente sem interrupções e com autorização adequada. Este guia destina-se principalmente a desenvolvedores, administradores de TI e equipes técnicas responsáveis por gerenciar o acesso ao site e as configurações de segurança.

#### Como permitir o Bot de Conformidade Regulada da impact.com

Como parceiro, seu site pode ser monitorado pelo Bot de Conformidade Regulada da impact.com para garantir que determinado conteúdo esteja alinhado com seu acordo com a(s) marca(s). Cada item monitorado exige uma visita separada ao seu site, portanto sites com grande volume de conteúdo monitorado receberão proporcionalmente mais requisições.

Se o Bot de Conformidade Regulada da impact.com estiver restrito (por exemplo, retornar HTTP 429 – Too Many Requests ou HTTP 403 – Forbidden), podemos ficar impossibilitados de revisar e verificar seu conteúdo, o que pode afetar a visibilidade de conformidade.

**Para garantir monitoramento ininterrupto:**

* Inclua na allowlist o Bot de Conformidade Regulada da impact.com usando o User-Agent fornecido.
* Evite bloquear ou limitar (throttle) requisições legítimas do Bot de Conformidade Regulada da impact.com.
* Verifique o Bot de Conformidade Regulada da impact.com usando a assinatura incluída nos cabeçalhos da requisição para confirmar a autenticidade e prevenir falsificações.
* Ao permitir e verificar o Bot de Conformidade Regulada da impact.com, você ajuda a garantir que seu conteúdo seja revisado com precisão e refletido no sistema da impact.com.

#### Identificação do User-Agent

Nosso rastreador usa um `User-Agent` personalizado para se identificar durante requisições web. Isso permite que você, como parceiro, distinga o tráfego de conformidade da impact.com de outros bots e rastreadores.

String do User-Agent para incluir na allowlist (use exatamente como mostrado):

```programlisting
Mozilla/5.0 (compatible;Impact.com Agent) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36
```

**Verificar requisições do rastreador da impact.com**

Para confirmar que o tráfego recebido é do rastreador da impact.com, cada requisição inclui um cabeçalho de assinatura HMAC personalizado:

```programlisting
X-Impact-Crawler-Signature: <hmac signature>
```

Essa assinatura permite autenticar a requisição usando um segredo conhecido e um algoritmo compartilhado. Ela garante que a requisição se originou na impact.com e não foi adulterada.

<details>

<summary>Construção da assinatura</summary>

**Construção da assinatura**

Calculamos a assinatura usando o seguinte processo:

* **Segredo**: `/impact/crawler/signature/`
* **Dados para assinar**: `User-Agent`
* **Algoritmo HMAC:** `HMAC-SHA256`
* **Saída da assinatura**: `String hexadecimal`

</details>

<details>

<summary>Como verificar (pseudocódigo)</summary>

```programlisting
const crypto = require('crypto');

// Extraia os cabeçalhos da requisição recebida
const userAgent = req.headers['user-agent'];
const signature = req.headers['x-impact-crawler-signature'];

const secret = '/impact/crawler/signature/';

// Recalcule a assinatura
const expectedSignature = crypto
  .createHmac('sha256', secret)
  .update(userAgent)
  .digest('hex');

// Compare as assinaturas
if (signature === expectedSignature) {
  // ✅ Verificado
} else {
  // ❌ Rejeitar ou registrar para revisão
}
```

{% hint style="danger" %}
**Aviso:** Certifique-se de usar o valor exato conforme recebido na requisição. Quaisquer modificações, como aparar, decodificar ou reformatar, resultarão em incompatibilidade da assinatura. `User-Agent` IP allowlist para monitoramento de conformidade regulada
{% endhint %}

</details>

#### Para dar suporte ao monitoramento contínuo de Conformidade Regulada, por favor inclua na allowlist as seguintes faixas de endereços IP. Isso garante que o tráfego da impact.com não seja bloqueado inadvertidamente e que o monitoramento do site possa prosseguir sem interrupções.

Permita as seguintes faixas de IP:

**Recomendamos atualizar seu firewall ou listas de controle de acesso para permitir tráfego de entrada das seguintes faixas de endereços IP da impact.com.**

* 163.116.128.0/17
* 162.10.0.0/17
* 31.186.239.0/24
* 8.39.144.0/24
* 8.36.116.0/24
* 34.145.188.137
* 35.245.212.57
* 34.21.56.213
* 34.48.90.233
* 35.245.229.167
* 34.150.151.151
* 35.245.185.65
* 35.188.242.212
* 34.86.33.122
* 34.145.224.193
* 35.245.135.218
* 35.221.1.178
* 34.150.217.77
* 107.175.80.80
* 162.212.175.22
* 107.172.69.119

Recomendado:

{% hint style="success" icon="memo-circle-info" %}
**Para coordenação técnica ou dúvidas relacionadas ao monitoramento de Conformidade Regulada e acesso de bots,** contate o suporte [contate o suporte](https://app.impact.com/secure/advertiser/support/customer-support-portal-flow.ihtml).
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.impact.com/partner/pt-br/o-que-voce-gostaria-de-aprender/platform-features/tracking/website-crawling-requirements-for-partners.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
