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

# Référence de configuration du SDK

> Toutes les options d'init du SDK navigateur Scanova : interrupteurs de suivi automatique, mode debug, endpoint personnalisé et valeurs par défaut de chacune.

Le SDK se configure avec un seul appel `scanova('init', siteId, options)`. Cette page documente toutes les options disponibles.

## Syntaxe

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', {
  // options here
});
```

## Référence des options

| Option         | Type    | Par défaut                | Description                                                                                          |
| -------------- | ------- | ------------------------- | ---------------------------------------------------------------------------------------------------- |
| `autoPageview` | boolean | `false`                   | Envoie automatiquement un événement `pageview` à chaque chargement de page.                          |
| `autoClicks`   | boolean | `false`                   | Suit automatiquement les clics sur les liens, boutons et éléments `[role="button"]`.                 |
| `autoForms`    | boolean | `false`                   | Suit automatiquement les envois de formulaire.                                                       |
| `autoScroll`   | boolean | `false`                   | Suit la profondeur de défilement aux paliers 25 %, 50 %, 75 % et 90 %.                               |
| `debug`        | boolean | `false`                   | Affiche l'activité du SDK dans la console du navigateur. Utile en développement.                     |
| `endpoint`     | string  | `https://t.scanova.io/ct` | Remplace l'endpoint de collecte des événements. À ne modifier que sur indication du support Scanova. |

## Détail des options

### `autoPageview`

Déclenche un événement `pageview` à chaque initialisation du SDK sur une page, ce qui se produit automatiquement lors des chargements complets. Pour les applications monopage, le [guide SPA](/fr/conversion-tracking/browser/spa-frameworks) explique comment déclencher les pages vues aux changements de route.

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', { autoPageview: true });
```

Chaque événement `pageview` contient `page_url`, `referrer`, `scan_session_id` ainsi que le contexte appareil et visiteur. Voir [Événements automatiques](/fr/conversion-tracking/browser/auto-tracking#page-view) pour le payload complet.

### `autoClicks`

Écoute les clics sur :

* les balises `<a>`
* les balises `<button>`
* les éléments portant `role="button"`

L'événement de clic capturé contient `element_type`, `element_text` et, pour les liens, éventuellement `destination_url`.

Astuce : ajoutez `data-scnv-name="My Button"` à n'importe quel élément pour remplacer le libellé capturé :

```html theme={null}
<button data-scnv-name="Pricing CTA">Start Trial</button>
```

### `autoForms`

Écoute l'événement `submit` des éléments `<form>`. Capture `form_name` et `form_action`. Les valeurs des champs ne sont **jamais capturées** — seul l'identifiant du formulaire l'est.

Astuce : ajoutez `data-scnv-name="Contact Form"` à un formulaire pour lui donner un nom lisible dans les rapports.

### `autoScroll`

Déclenche des événements de profondeur lorsque la personne dépasse 25 %, 50 %, 75 % et 90 % de la hauteur de page. Chaque palier ne se déclenche qu'une fois par chargement et contient `scroll_depth` dans les métadonnées.

### `debug`

Active la journalisation en console. À utiliser en développement pour vérifier que le SDK s'initialise, capture les événements et les envoie correctement.

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', { debug: true });
// Console output:
// [QCG SDK] Initialized with Site ID: YOUR_SITE_ID
// [QCG SDK] Loaded version 1.x.x
```

Désactivez `debug` en production : l'option vaut `false` par défaut.

## Configuration recommandée en production

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', {
  autoPageview: true,
  autoClicks: true,
  autoForms: true,
  autoScroll: true,
  debug: false
});
```

## Configuration minimale (pages vues uniquement)

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', {
  autoPageview: true
});
```

## Configuration manuelle uniquement (sans suivi automatique)

À utiliser si vous voulez un contrôle total sur ce qui est suivi : chaque événement sera envoyé explicitement via `scanova('track', ...)`.

```javascript theme={null}
scanova('init', 'YOUR_SITE_ID', {
  autoPageview: false,
  autoClicks: false,
  autoForms: false,
  autoScroll: false
});
```

## Important : un seul init par chargement de page

Appelez `scanova('init', ...)` **une seule fois** par cycle de vie de page. Plusieurs appels enregistrent des écouteurs en double et produisent des événements dupliqués.

Dans les applications monopage, appelez `init` une fois au démarrage de l'application, pas à chaque changement de route. Utilisez le [guide SPA](/fr/conversion-tracking/browser/spa-frameworks) pour le suivi des changements de route.

## Désactiver le suivi pour certains utilisateurs

Le SDK n'a pas de méthode `disable()` intégrée. Pour ne pas suivre certains utilisateurs (personnel connecté, personnes opposées au suivi, robots), évitez conditionnellement de charger le snippet :

```html theme={null}
<script>
  // Example: skip tracking for your own team
  const isInternalUser = document.cookie.includes('internal_user=true');

  if (!isInternalUser) {
    (function(w,d,s,o,f,js,fjs){
      w['ScanovaTrackingObject']=o;w[o]=w[o]||function(){(w[o].q=w[o].q||[]).push(arguments)};
      js=d.createElement(s),fjs=d.getElementsByTagName(s)[0];
      js.id=o;js.src=f;js.async=1;fjs.parentNode.insertBefore(js,fjs);
    })(window,document,'script','scanova','https://cdn.scanova.io/ct/js/qcg.min.js');
    scanova('init', 'YOUR_SITE_ID', { autoPageview: true });
  }
</script>
```

Le même schéma vaut pour le consentement RGPD : ne chargez le SDK qu'après accord de la personne. Voir [Confidentialité et RGPD](/fr/conversion-tracking/event-model#privacy-and-gdpr) pour le détail.
