# Instale a integração Content Targeting

A **Content Targeting** é uma integração *serverless* do Marketplace da Azion.

Esta integração permite que você manipule cookies e cabeçalhos para lógicas de uso flexíveis. Ela pode lidar com contextos específicos de aplicações, regras de negócios ou outros cenários definidos pelo cliente, bem como segmentação de conteúdo.

Você pode criar diferentes cenários e definir variantes e porcentagens de distribuição para cada cenário usando os parâmetros da integração. Isso permite uma maior assertividade sem gastar recursos e interações na fonte. Além disso, você pode criar a lógica de processamento diretamente no edge, ampliando as possibilidades de aplicação da função e obtendo benefícios como cache direcionado, absorção de picos de acesso, alto desempenho, lógica de processamento distribuído e registro de eventos via streaming de dados.

---

## Obtenha a integração

Para usar a integração **Content Targeting** fornecida no Marketplace da Azion, siga estes passos:
1. Acesse o [Azion Console](/pt-br/documentacao/produtos/guias/como-acessar-o-azion-console/) > **Marketplace**.
2. Na página inicial do Marketplace, procure o card da integração **Content Targeting** e selecione-o.
3. Na página da integração, clique no botão **Install** para iniciar a instalação.

Aparecerá uma mensagem de sucesso indicando que a sua integração está instalada.

:::tip
Você pode procurar qualquer integração navegando pelos cards, usando os filtros ou digitando uma palavra-chave na barra de busca.
:::

---

## Configure a integração

Depois de obter sua integração no Marketplace, você terá que selecionar uma application para usar a integração.

:::tip
Se você ainda na tiver uma aplicação, acesse a [seção Build](/pt-br/documentacao/produtos/guias/build/criar-uma-aplicacao/) para saber como criar uma nova application.
:::

Para configurar sua integração, proceda da seguinte forma:

1. No canto superior esquerdo, selecione **Products menu** > **Applications** na seção **BUILD**.
2. Na página de listagem de suas applications, selecione aquela que você deseja usar com a integração **Content Targeting**.
3. Na aba **Main Settings**, localize a opção **Functions** e ative-a para habilitar functions em sua application.
4. Clique no botão **Save**.

Você receberá uma mensagem de sucesso indicando que sua application foi atualizada.

:::caution[atenção]
Se qualquer produto ou módulo for ativado, pode gerar custos relacionados ao uso. Consulte a [página de preços](/pt-br/documentacao/produtos/precos/) para obter mais informações.
:::

---

## Instancie a integração

Para habilitar a função relacionada a integração, enquanto ainda estiver na página da **Applications**:

1. Selecione a aba **Functions Instances** na lista superior.
2. Clique no botão **+ Function Instance**.
3. Escolha um nome fácil de lembrar para sua função.
4. No menu suspenso, selecione a função **Content Targeting [Global]**.
  - Esta ação irá carregar a aba **Arguments**.
5. Na aba **Arguments**, você passará os parámetros no arquivo `JSON`, como mostrado abaixo:

```json
{
  "cookie_name": "azion-cookie",
  "header_name": "azion_header",
  "domain": ".azion.com",
  "max_age": 600,
  "expires": "Tue, 19 Jan 2038 03:14:07 GMT",
  "path": "/",
  "values": [
    {
      "value": "A",
      "weight": 7.1,
      "cache_key": "custom_a"
    },
    {
      "value": "B",
      "weight": 14.9
    }
  ]
}
```

Onde:

| Key | Data Format | Obrigatório | Descrição | Notas |
|---|---|---|---|---|
| `cookie_name` | String | Sim | Representa o cookie que será usado para armazenar o valor desejado. | - |
| `header_name` | String | Sim | Representa o cabeçalho que será usado para armazenar o valor desejado. | - |
| `domain` | String | Sim | Define o domínio para o qual o cookie será definido. | - |
| `max_age` | Inteiro | Não | Define por quanto tempo (em segundos) o valor do cookie será válido. | Ainda que os campos `max_age` e `expires` não sejam obrigatórios, é recomendado usar pelo menos um deles, caso contrário, o cookie não será armazenado.<br /><br /> Outro fato importante é que este campo não substitui um ao outro, na verdade, o campo `expires` é apenas um *fallback* para navegadores mais antigos que ainda não funcionam com a diretiva `max_age`. |
| `expires` | String | Não | Modo legado usado para definir por quanto tempo um cookie será armazenado. <br /><br />Ao usar este formato, você deve inserir uma data inteira. | - |
| `path` | String | Sim | Define o caminho onde o cookie será válido. | - |
| `values` | Objeto | Sim (a lista deve ter pelo menos uma entrada). | Descreve cada valor possível que será usado. | O campo` value` (obrigatório) representa o valor que será definido no cookie/cabeçalho se esta opção for passada.<br /><br />O campo `weight` (obrigatório) define as probabilidades da opção ser escolhida.<br /><br /> O campo `cache_key` (opcional) define uma *cache key* personalizada para a solicitação sempre que esta opção for escolhida. |

---

## Configure uma regra no Rules Engine

Agora você deverá configurar as regras que deseja (*criteria* e *behavior*) aplicar para executar sua função.

Ainda na página **Applications**, siga estes passos:

1. Selecione a aba **Rules Engine**.
2. Clique em **Default Rule**.
   - Você não pode alterar o campo *criteria* (critério) para a **Default Rule** no **Rules Engine**.
3. No campo de *behavior* (comportamento), selecione **Run Function** no menu suspenso.
4. Selecione a função **Content Targeting** de acordo com o nome que você deu na etapa de instanciação.
5. Clique no botão **Save**

Pronto. Sua integração **Content Targeting** está sendo executada no edge.

---