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

# Clients

> Apprenez à gérer et récupérer les données clients via l'API Chariow

Les clients sont créés automatiquement lorsqu'ils effectuent un achat dans votre boutique. Chaque client est spécifique à votre boutique et possède son propre profil avec des informations de contact, un historique d'achats et un accès aux produits.

## Objet Client

Un objet client contient les informations suivantes :

```json theme={null}
{
  "id": "cus_abc123xyz",
  "name": "John Doe",
  "first_name": "John",
  "last_name": "Doe",
  "email": "john@example.com",
  "avatar_url": "https://cdn.chariow.com/avatars/abc123.jpg",
  "phone": {
    "number": "+1 234 567 890",
    "country": {
      "name": "United States",
      "code": "US",
      "alpha_3_code": "USA",
      "dial_code": "+1",
      "currency": "USD",
      "flag": "🇺🇸"
    }
  },
  "store": {
    "id": "str_xyz789",
    "name": "My Digital Store",
    "logo_url": "https://cdn.chariow.com/stores/xyz789/logo.png",
    "url": "https://mystore.chariow.link"
  },
  "created_at": "2025-01-15T10:30:00+00:00",
  "updated_at": "2025-01-20T14:45:00+00:00"
}
```

### Propriétés du Client

| Propriété    | Type   | Description                                              |
| ------------ | ------ | -------------------------------------------------------- |
| `id`         | string | Identifiant unique du client avec le préfixe `cus_`      |
| `name`       | string | Nom complet (combinaison du prénom et du nom)            |
| `first_name` | string | Prénom du client                                         |
| `last_name`  | string | Nom de famille du client                                 |
| `email`      | string | Adresse e-mail du client                                 |
| `avatar_url` | string | URL de l'image d'avatar du client                        |
| `phone`      | object | Numéro de téléphone avec les informations du pays        |
| `store`      | object | Boutique à laquelle appartient le client                 |
| `created_at` | string | Horodatage ISO 8601 de la date de création du client     |
| `updated_at` | string | Horodatage ISO 8601 de la dernière mise à jour du client |

## Liste des Clients

Récupérez tous les clients de votre boutique :

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.chariow.com/v1/customers" \
    -H "Authorization: Bearer sk_live_your_api_key"
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch('https://api.chariow.com/v1/customers', {
    headers: {
      'Authorization': 'Bearer sk_live_your_api_key'
    }
  });

  const result = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://api.chariow.com/v1/customers',
      headers={'Authorization': 'Bearer sk_live_your_api_key'}
  )

  customers = response.json()['data']
  ```
</CodeGroup>

### Paramètres de Requête

| Paramètre    | Type    | Description                                                                  |
| ------------ | ------- | ---------------------------------------------------------------------------- |
| `per_page`   | integer | Nombre de clients par page (par défaut : 15, max : 100)                      |
| `cursor`     | string  | Curseur pour la pagination (utilisez `next_cursor` de la réponse précédente) |
| `search`     | string  | Recherche par nom, e-mail ou numéro de téléphone                             |
| `start_date` | string  | Filtre les clients créés à partir de cette date (format Y-m-d)               |
| `end_date`   | string  | Filtre les clients créés jusqu'à cette date (format Y-m-d)                   |

### Recherche de Clients

Recherchez des clients par nom, e-mail ou numéro de téléphone :

```bash theme={null}
curl -X GET "https://api.chariow.com/v1/customers?search=john" \
  -H "Authorization: Bearer sk_live_your_api_key"
```

### Filtrage par Plage de Dates

Récupérez les clients créés dans une plage de dates spécifique :

```bash theme={null}
curl -X GET "https://api.chariow.com/v1/customers?start_date=2025-01-01&end_date=2025-01-31" \
  -H "Authorization: Bearer sk_live_your_api_key"
```

### Exemple de Réponse

```json theme={null}
{
  "data": [
    {
      "id": "cus_abc123xyz",
      "name": "John Doe",
      "first_name": "John",
      "last_name": "Doe",
      "email": "john@example.com",
      "avatar_url": "https://cdn.chariow.com/avatars/abc123.jpg",
      "phone": {
        "number": "+1 234 567 890",
        "country": {
          "name": "United States",
          "code": "US",
          "alpha_3_code": "USA",
          "dial_code": "+1",
          "currency": "USD",
          "flag": "🇺🇸"
        }
      },
      "store": {
        "id": "str_xyz789",
        "name": "My Digital Store",
        "logo_url": "https://cdn.chariow.com/stores/xyz789/logo.png",
        "url": "https://mystore.chariow.link"
      },
      "created_at": "2025-01-15T10:30:00+00:00",
      "updated_at": "2025-01-20T14:45:00+00:00"
    }
  ],
  "pagination": {
    "next_cursor": "eyJpZCI6NTB9",
    "prev_cursor": null,
    "has_more": true
  }
}
```

## Récupération d'un Client Unique

Récupérez un client spécifique par son ID public :

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.chariow.com/v1/customers/cus_abc123" \
    -H "Authorization: Bearer sk_live_your_api_key"
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch('https://api.chariow.com/v1/customers/cus_abc123', {
    headers: {
      'Authorization': 'Bearer sk_live_your_api_key'
    }
  });

  const result = await response.json();
  ```
</CodeGroup>

## Cycle de Vie du Client

<Steps>
  <Step title="Client Créé">
    Un nouveau dossier client est créé lorsqu'il effectue son premier achat.
  </Step>

  <Step title="Achat Enregistré">
    Chaque achat est lié au profil du client.
  </Step>

  <Step title="Accès Accordé">
    Le client reçoit l'accès à ses produits achetés (téléchargements, cours, licences).
  </Step>

  <Step title="Accès au Portail">
    Les clients peuvent accéder au portail client pour consulter leurs achats et téléchargements.
  </Step>
</Steps>

## Cas d'Usage Courants

<AccordionGroup>
  <Accordion title="Intégration CRM" icon="address-book">
    Synchronisez les clients avec votre CRM en récupérant les nouveaux clients à l'aide de filtres de date :

    ```javascript theme={null}
    // Récupérer les clients créés au cours des dernières 24 heures
    const today = new Date().toISOString().split('T')[0];
    const yesterday = new Date(Date.now() - 86400000).toISOString().split('T')[0];

    const response = await fetch(
      `https://api.chariow.com/v1/customers?start_date=${yesterday}&end_date=${today}`,
      { headers: { 'Authorization': 'Bearer sk_live_your_api_key' }}
    );

    const result = await response.json();
    // Synchroniser result.data avec votre CRM
    ```
  </Accordion>

  <Accordion title="Marketing par E-mail" icon="envelope">
    Ajoutez des clients à vos listes de diffusion en fonction de leurs achats :

    ```javascript theme={null}
    // Obtenir les détails du client pour la liste de diffusion
    const response = await fetch(
      'https://api.chariow.com/v1/customers/cus_abc123xyz',
      { headers: { 'Authorization': 'Bearer sk_live_your_api_key' }}
    );

    const result = await response.json();

    await addToMailingList({
      email: result.data.email,
      firstName: result.data.first_name,
      lastName: result.data.last_name,
      tags: ['customer', 'purchased']
    });
    ```
  </Accordion>

  <Accordion title="Recherche de Client" icon="magnifying-glass">
    Recherchez un client par e-mail lorsqu'il contacte le support :

    ```bash theme={null}
    curl -X GET "https://api.chariow.com/v1/customers?search=customer@example.com" \
      -H "Authorization: Bearer sk_live_your_api_key"
    ```

    Le paramètre de recherche correspond aux champs nom, e-mail et numéro de téléphone.
  </Accordion>

  <Accordion title="Rapports Mensuels" icon="chart-line">
    Générez des rapports mensuels d'acquisition de clients à l'aide de filtres de date :

    ```bash theme={null}
    curl -X GET "https://api.chariow.com/v1/customers?start_date=2025-01-01&end_date=2025-01-31&per_page=100" \
      -H "Authorization: Bearer sk_live_your_api_key"
    ```

    Cela récupère tous les clients qui ont effectué leur premier achat en janvier 2025.
  </Accordion>
</AccordionGroup>

## Ressources Associées

<CardGroup cols={2}>
  <Card title="Guide des Ventes" icon="receipt" href="/fr/guides/sales">
    Consultez l'historique des achats des clients
  </Card>

  <Card title="Guide des Licences" icon="key" href="/fr/guides/licenses">
    Gérez les licences des clients
  </Card>

  <Card title="API Clients" icon="code" href="/api-reference/customers/list-customers">
    Consultez la référence complète de l'API Clients
  </Card>
</CardGroup>
