# Utilisateurs API

## Visiteur

<mark style="color:blue;">`GET`</mark> `https://api.commander1.com/v1.0/engage/visitors/`

Ce endpoint vous permet de **récupérer les propriétés d’un visiteur spécifique**. Lorsque vous créez le token, vous pouvez définir quelles propriétés retourner.

Cette API est davantage conçue pour être appelée depuis un tag dans le navigateur de chaque utilisateur.

#### Paramètres de requête

| Nom      | Type    | Description                                                                          |
| -------- | ------- | ------------------------------------------------------------------------------------ |
| callback | string  | (optionnel) Callback pour une requête jsonp                                          |
| token    | string  | Jeton de sécurité                                                                    |
| site     | integer | ID du site                                                                           |
| tcid     | string  | ID du cookie. Si vide (recommandé), il lira le tcid dans le cookie de l’utilisateur. |

{% tabs %}
{% tab title="200 " %}

```
{
    "user_age": 39,
    "user_privacy_categories": [
      "11",
      "12",
      "13"
    ]
}
```

{% endtab %}
{% endtabs %}

### First-party usage

Si votre site utilise un domaine First-party (soit via un sous-domaine dédié, soit via le chemin Commanders Act Gateway), les appels API doivent être effectués sur votre propre domaine.

Important : l’URL doit inclure /api/ dans le chemin.\
Sans ce chemin, la requête ne fonctionnera pas.

#### 1. En utilisant un sous-domaine dédié (exemple : tracking.mydomain.com)

La structure de l’API First-party doit suivre ce modèle :\
<https://tracking.mydomain.com/**api**/1.0/engage/visitors/>

Exemple :\
<https://tracking.mydomain.com/api/v1.0/engage/visitors/?site=5326\\&tcid=\\&token=XXXX>

#### 2. En utilisant Commanders Act Gateway (configuration basée sur un chemin)

Si votre endpoint gateway est servi sous un chemin (par exemple : <https://www.mydomain.com/cact-proxy/),\\>
la structure de l’API First-party doit suivre ce modèle :\
<https://www.mydomain.com/cact-proxy/**api**/1.0/engage/visitors/>

Exemple :\
<https://www.mydomain.com/cact-proxy/**api**/v1.0/engage/visitors/?site=5326\\&tcid=\\&token=XXXX>

Remarque : conservez toujours la **/api/**&#x73;tructure /… après le sous-domaine ou le chemin gateway.

## User

<mark style="color:blue;">`GET`</mark> `https://api.commander1.com/engage/user/`

Ce endpoint vous permet de **récupérer les propriétés d’un utilisateur spécifique** basé sur un `user_id`. Lorsque vous créez le token, vous pouvez définir quelles propriétés retourner.

#### Paramètres de requête

| Nom      | Type    | Description         |
| -------- | ------- | ------------------- |
| token    | string  | Jeton de sécurité   |
| user\_id | string  | ID de l’utilisateur |
| site     | integer | ID du site          |

{% tabs %}
{% tab title="200 Consentement récupéré avec succès." %}

```javascript
{
    "user_age": 39,
    "user_privacy_categories": [
      "11",
      "12",
      "13"
    ]
}
```

{% endtab %}

{% tab title="404 Impossible de trouver un utilisateur correspondant à cette requête." %}

```javascript
{
    "message": "Person not found"
}
```

{% endtab %}
{% endtabs %}

### N’utilisez pas ce endpoint client-side

Le endpoint GET User doit **pas** être appelé depuis le navigateur.\
Exposer le token permettrait à n’importe qui de le capturer et de parcourir les ID utilisateur pour extraire toutes les données utilisateur.

Utilisez cette API **server-side uniquement** dans un environnement backend sécurisé.

## User

<mark style="color:orange;">`PUT`</mark> `https://api.commander1.com/engage/user/`

Insérer ou mettre à jour un utilisateur

#### Paramètres de requête

| Nom      | Type   | Description          |
| -------- | ------ | -------------------- |
| site     | string | ID du site (compte)  |
| user\_id | string | ID de l’utilisateur. |
| token    | string | Jeton de sécurité    |

{% tabs %}
{% tab title="200 " %}

```
{"success":true}
```

{% endtab %}
{% endtabs %}

#### Exemple de requête <a href="#example-request" id="example-request"></a>

`PUT`

<https://api.commander1.com/engage/user/?site=1234\\&user\\_id=1234\\&token=WvNIX8955cnZ7WF0f632s0Wb99Ql3rtA>

```
//Exemple de format
{
    "person": {
        "id": "10000000",
        "card": "12345678910",
        "email": "mycustomer@test.com",
        "gender": "female",
        "firstname": "Joan",
        "lastname": "Craig",
        "custom": {
            "area_number": 123
        },
    ...
    }
}
```

## SUPPRIMER l’utilisateur

Supprimer un utilisateur

#### URL de la ressource <a href="#resource-url" id="resource-url"></a>

<https://api.commander1.com/engage/user/>

#### Informations sur la ressource <a href="#resource-information" id="resource-information"></a>

| Formats de réponse         | JSON        |
| -------------------------- | ----------- |
| Authentification requise ? | Oui (token) |

#### Paramètres

| NOM               | EXIGENCE       | VALEURS D’EXEMPLE                | DESCRIPTION         |
| ----------------- | -------------- | -------------------------------- | ------------------- |
| site              | d+             | 1234                             | ID du site          |
| user\_id          | d+             | 1234                             | ID de l’utilisateur |
| tc\_id (optional) | d+             | 1234                             | ID du visiteur      |
| token             | \[a-zA-Z0-9]\* | WvNIX8955cnZ7WF0f632s0Wb99Ql3rtA | Jeton de sécurité   |

#### Exemple de requête <a href="#example-request" id="example-request"></a>

`DELETE`

<https://api.commander1.com/engage/user/?site=1234\\&user\\_id=1234\\&tc\\_id=1234\\&token=WvNIX8955cnZ7WF0f632s0Wb99Ql3rtA>

#### Réponse <a href="#example-request" id="example-request"></a>

```
{"success":true}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.commandersact.com/fr/fonctionnalites/sources/sources-catalog/import-crm-users/api-users.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
