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

# Créer un segment pour cibler les visiteurs par URL de page

> Créez un segment de ciblage qui filtre les visiteurs par URL de page à l'aide de l'endpoint segments de l'Automation API.

## Objectif

Créez ensuite un **segment** pour cibler les visiteurs qui naviguent sur une URL spécifique, telle que `www.site-test.com`.
Consultez le [guide de création de segment](/user-manual/assets/segments/create-a-segment) pour plus de détails.

## Prérequis

* `access token`

L'Automation API nécessite un [access token](/developer-docs/apis/automation-api-rest/get-started/get-started).
Récupérez le token de manière programmatique en suivant les instructions de la section [obtention d'un access token](/developer-docs/apis/automation-api-rest/get-started/get-started#1-obtain-an-access-token).

* `siteId`

  * Récupérez le `siteId` directement dans le code avec le `siteCode` en appelant [l'endpoint get a site by code](/api-reference/site/get-a-site-by-code).

  * Vous pouvez également vous connecter au compte Kameleoon, accéder au coin inférieur gauche et sélectionner **Projets** sous la section **Admin** :

  <Frame>
    ![SiteID](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/api-tutorial/site-id.jpg)
  </Frame>

  Cliquez sur **Modifier** sur le projet :

  <Frame>
    ![Edit](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/api-tutorial/edit.jpg)
  </Frame>

  Le `siteId` est le nombre à cinq chiffres dans l'URL (par exemple, **29353**) :

  <Frame>
    ![Digits](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/api-tutorial/digits.jpg)
  </Frame>

## Créer le segment

**Endpoint :**

```
POST https://api.kameleoon.com/segments
```

| Nom            | Type   | Description                                                                                                                        |
| -------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------- |
| conditionsData | Object | Définit les conditions de ciblage. Voir [la référence de l'API](/developer-docs/apis/automation-api-rest/get-started/get-started). |
| name           | String | Nom du segment.                                                                                                                    |
| segmentType    | String | Type de segment, par exemple `STANDARD` pour les expériences.                                                                      |
| siteId         | String | Le `siteId` du projet.                                                                                                             |

**Exemple :**

```bash theme={null}
curl -L -X POST 'https://api.kameleoon.com/segments' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
--data-raw '{
  "name": "New segment",
  "description": "Target by webpage",
  "siteId": 29353,
  "segmentType": "STANDARD",
  "conditionsData": {
    "firstLevelOrOperators": [true],
    "firstLevel": [
      {
        "conditions": [
          {
            "targetingType": "PAGE_URL",
            "weight": 1,
            "url": "www.site-test.com",
            "matchType": "EXACT",
            "include": true
          }
        ]
      }
    ]
  }
}'
```

***

## Créer un objectif pour l'expérience

### Objectif

Les objectifs sont des métriques permettant de suivre le succès des campagnes.
Cette section crée un **objectif de Clic** pour compter les clics sur l'élément `.cta-button`.
Consultez le [guide de création d'objectif](/user-manual/assets/goals/create-a-goal) pour plus d'informations.

### Étapes

#### Créer l'objectif

**Endpoint :**

```
POST https://api.kameleoon.com/goals
```

| Nom         | Type   | Description                                                              |
| ----------- | ------ | ------------------------------------------------------------------------ |
| description | String | Description de l'objectif (par exemple, « Nombre de clics sur le CTA »). |
| name        | String | Nom de l'objectif (par exemple, « Clics sur le CTA »).                   |
| siteId      | String | Le `siteId` du projet.                                                   |
| params      | Object | Inclut les sélecteurs d'éléments pour le suivi des clics.                |

**Exemple :**

```bash theme={null}
curl -L -X POST 'https://api.kameleoon.com/goals' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
--data-raw '{
  "description": "Number of times CTA button was clicked",
  "hasMultipleConversions": true,
  "name": "Clicks on CTA",
  "params": {
    "customSelectors": [
      {
        "mode": "CUSTOM",
        "selector": ".cta-button, #bloc-789"
      }
    ]
  },
  "siteId": 29353,
  "status": "ACTIVE",
  "type": "CLICK"
}'
```

***

## Ajouter un objectif et un segment avant de lancer une expérience

### Objectif

Liez l'objectif et le segment à `Experiment_1` et activez l'expérience.

### Étapes

#### 1. Lier et lancer

**Endpoint :**

```
PATCH https://api.kameleoon.com/experiments/{experimentId}?action=ACTIVATE
```

| Nom                | Type   | Description                                               |
| ------------------ | ------ | --------------------------------------------------------- |
| targetingSegmentId | String | ID du segment à lier.                                     |
| goals              | Array  | IDs des objectifs à lier.                                 |
| deviations         | Object | Allocation du trafic entre le contrôle et les variations. |
| mainGoalId         | String | ID de l'objectif principal.                               |
| status             | String | Statut de l'expérience (`ONLINE`, `PAUSED`, et autres).   |

**Exemple :**

```bash theme={null}
curl -L -X PATCH 'https://api.kameleoon.com/experiments/283505?action=ACTIVATE' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
--data-raw '{
  "targetingSegmentId": 298314,
  "goals": [361517],
  "deviations": {"origin": 0.5, "1053310": 0.5},
  "mainGoalId": 361517,
  "status": "ONLINE"
}'
```

#### 2. Vérifier le lancement

Actualisez le dashboard.
`Experiment_1` devrait maintenant afficher le statut **Online** :

<Frame>
  ![Experiment\_activated](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/api-tutorial/experiment-launched.jpg)
</Frame>

***

La création, la configuration et le lancement d'une expérience à l'aide de l'Automation API sont maintenant terminés.
