# Contrôle de session

Les Proxys Résidentiels dynamiques offrent deux modes de session : rotation (par défaut) et persistant. Le mode se choisit via les paramètres du username, sans aucun réglage côté tableau de bord.

## Mode rotation (par défaut)

Sans paramètre de session, **chaque requête de connexion reçoit automatiquement une nouvelle IP** :

```bash
curl -x proxy.eproxies.net:23333 -U "USERNAME-pool-flow-region-US:PASSWORD" https://ipinfo.io
# Exécutée deux fois de suite, la commande renvoie deux IP différentes
```

Idéal pour : collecte de données, surveillance de prix, vérification publicitaire — tous les scénarios où chaque requête doit provenir d'une IP différente.

## Mode persistant

Ajoutez `-sid-{8 caractères aléatoires}-ttl-{minutes}` : un même `sid` réutilise la même IP pendant la durée du `ttl` :

```bash
curl -x proxy.eproxies.net:23333 -U "USERNAME-pool-flow-region-US-sid-a1b2c3d4-ttl-30:PASSWORD" https://ipinfo.io
# Pendant 30 minutes, répéter la requête avec le même sid renvoie la même IP
```

| Paramètre | Description |
| --- | --- |
| `sid` | identifiant de session, 8 caractères alphanumériques aléatoires générés par vos soins ; chaque sid correspond à une session indépendante |
| `ttl` | durée de maintien de l'IP (minutes), de **1 à 120** |

Idéal pour : connexion à un compte, formulaires en plusieurs étapes, parcours de panier — toutes les opérations exigeant une persistance de session.

## Astuces de gestion des sessions

**Changer d'IP à la demande** : passez à un nouveau `sid` pour obtenir immédiatement une nouvelle IP, sans attendre l'expiration du ttl.

**Sessions parallèles multiples** : les différents `sid` sont indépendants les uns des autres ; vous pouvez maintenir simultanément autant de sessions parallèles à IP fixe que nécessaire :

```python
import random, string, requests

def make_session_proxy(country: str) -> dict:
    sid = "".join(random.choices(string.ascii_lowercase + string.digits, k=8))
    url = (
        f"http://USERNAME-pool-flow-region-{country}-sid-{sid}-ttl-30:PASSWORD"
        "@proxy.eproxies.net:23333"
    )
    return {"http": url, "https": url}

# 10 sessions américaines indépendantes à IP fixe
sessions = [make_session_proxy("US") for _ in range(10)]
for proxies in sessions:
    print(requests.get("https://ipinfo.io", proxies=proxies, timeout=30).json()["ip"])
```

> Les IP résidentielles proviennent d'appareils réels : la déconnexion d'un appareil pendant une session persistante peut entraîner un changement d'IP. Pour les flux à haute exigence de fiabilité, vérifiez côté applicatif que l'IP de sortie n'a pas changé.
