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

# Démarrage rapide Youverify : votre premier appel d'API en 5 minutes

> Créez un compte Youverify, obtenez votre clé d'API, créez votre première entité et lancez une vérification d'identité, le tout en moins de cinq minutes.

Le moyen le plus rapide de comprendre Youverify est de créer une entité et de lire son Entity 360, la vue unifiée de tout ce qui est rattaché à un sujet. Ce guide vous accompagne à chaque étape, de la création du compte à votre premier appel d'API réussi, dans l'environnement sandbox afin que rien ne soit facturé.

**1. Créez votre compte Youverify**

Rendez-vous sur [cowork.youverify.co](https://cowork.youverify.co) et créez un espace de travail gratuit. Une fois votre adresse e-mail confirmée, vous arrivez sur le tableau de bord, votre point central pour gérer les entités, les vérifications et les paramètres de l'espace de travail.

> [!TIP]
>
> Si votre organisation dispose déjà d'un espace de travail, demandez à votre administrateur de vous y inviter plutôt que d'en créer un nouveau. Toutes les clés d'API et les données d'entités sont liées à un seul espace de travail.

**2. Choisissez votre environnement**

Youverify propose deux environnements totalement indépendants. Commencez par le **sandbox** : il utilise des données de test synthétiques et n'est jamais facturé.

| Environnement | URL de base | Données | Facturation |
| - | - | - | - |
| **Sandbox** | `https://api.sandbox.youverify.co` | Test / synthétiques | Gratuit |
| **Production** | `https://api.youverify.co` | Sources officielles | Facturé par vérification |

Changez d'environnement avec le sélecteur d'environnement situé en haut à gauche de votre espace de travail. Chaque environnement possède son propre jeu de clés d'API : une clé sandbox sera rejetée par l'endpoint de production, et inversement.

> [!WARNING]
>
> Ne dirigez jamais une clé sandbox vers l'URL de base de production, ni une clé de production vers l'URL du sandbox. L'API renvoie une erreur `401 Unauthorized` lorsque la clé et l'environnement ne correspondent pas.

**3. Obtenez votre clé d'API**

Dans votre espace de travail, accédez à **Settings → API Keys**. Copiez votre **API Secret Key** pour l'environnement sandbox. Stockez-la immédiatement dans une variable d'environnement : ne l'écrivez jamais en dur dans vos fichiers sources.

```bash theme={null}
export YV_SECRET_KEY="your_sandbox_secret_key_here"
```

Votre clé secrète authentifie chaque requête de serveur à serveur via un unique header `token`. Il n'y a pas de handshake OAuth : la possession de la clé vaut autorisation. Elle doit donc rester sur votre backend et ne jamais être exposée dans du code côté client.

> [!NOTE]
>
> Vous verrez également une **Public Merchant Key** dans les paramètres. Cette clé peut être intégrée en toute sécurité dans les SDK web ou mobiles et les parcours hébergés. Elle est limitée au démarrage des sessions de détection de vivacité et de capture de documents : elle ne permet ni de créer des entités ni de récupérer des données sensibles.

**4. Créez votre première entité**

Une **entité** est tout sujet que vous devez suivre, vérifier ou surveiller : un particulier ou une entreprise. La création d'une entité est le point d'entrée de toute la plateforme Youverify : dès qu'elle est créée, Youverify lance un premier filtrage CDD (PEP, sanctions, médias négatifs) et lui attribue un score de risque.

Envoyez une requête `POST` à `/v2/api/entities` avec les champs minimaux requis, `entityType`, `isSubjectConsent` et les informations d'identité de base :

```bash cURL theme={null}
curl -X POST "https://api.sandbox.youverify.co/v2/api/entities" \
  -H "token: $YV_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "entityType": "individual",
    "isSubjectConsent": true,
    "firstName": "Jane",
    "lastName": "Doe",
    "email": "jane@example.com"
  }'
```

```javascript Node.js theme={null}
const response = await fetch(
  "https://api.sandbox.youverify.co/v2/api/entities",
  {
    method: "POST",
    headers: {
      token: process.env.YV_SECRET_KEY,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      entityType: "individual",
      isSubjectConsent: true,
      firstName: "Jane",
      lastName: "Doe",
      email: "jane@example.com",
    }),
  }
);

const { data } = await response.json();
console.log("Entity ID:", data.id); // ent_...
```

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

response = requests.post(
    "https://api.sandbox.youverify.co/v2/api/entities",
    headers={
        "token": os.environ["YV_SECRET_KEY"],
        "Content-Type": "application/json",
    },
    json={
        "entityType": "individual",
        "isSubjectConsent": True,
        "firstName": "Jane",
        "lastName": "Doe",
        "email": "jane@example.com",
    },
)

data = response.json()["data"]
print("Entity ID:", data["id"])  # ent_...
```

Une réponse réussie ressemble à ceci :

```json theme={null}
{
  "success": true,
  "status_code": 201,
  "message": "Entity created successfully.",
  "data": {
    "id": "ent_685c73c8519d82bd21a42fae",
    "entityType": "individual",
    "firstName": "Jane",
    "lastName": "Doe",
    "email": "jane@example.com",
    "status": "not_approved",
    "profileStatus": "pending",
    "riskScore": 12,
    "riskLevel": "low",
    "isSubjectConsent": true,
    "createdAt": "2025-06-25T10:00:00.000Z",
    "updatedAt": "2025-06-25T10:00:00.000Z"
  },
  "links": []
}
```

Conservez la valeur de `id` (la chaîne `ent_...`) : vous l'utiliserez pour référencer cette entité dans chaque appel suivant.

> [!NOTE]
>
> `status: "not_approved"` est l'état initial attendu. La création d'une entité est une action de **suivi**, et non une décision d'approbation. L'approbation s'exécute séparément, sous la forme d'un workflow automatisé d'agent IA, après le rattachement des vérifications.

**5. Lisez l'Entity 360**

L'**Entity 360** n'est pas un objet distinct : c'est l'entité vue à travers tout ce qui lui est rattaché, à savoir son profil, son score de risque, ses vérifications, ses transactions, ses signaux, ses activités et ses dossiers. Récupérez-la en appelant `GET /v2/api/entities/{id}` avec l'identifiant d'entité que vous venez d'enregistrer.

```bash cURL theme={null}
curl -X GET "https://api.sandbox.youverify.co/v2/api/entities/ent_685c73c8519d82bd21a42fae" \
  -H "token: $YV_SECRET_KEY"
```

```javascript Node.js theme={null}
const entityId = "ent_685c73c8519d82bd21a42fae";

const response = await fetch(
  `https://api.sandbox.youverify.co/v2/api/entities/${entityId}`,
  {
    headers: { token: process.env.YV_SECRET_KEY },
  }
);

const { data } = await response.json();
console.log("Risk score:", data.riskScore);
console.log("Profile status:", data.profileStatus);
```

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

entity_id = "ent_685c73c8519d82bd21a42fae"

response = requests.get(
    f"https://api.sandbox.youverify.co/v2/api/entities/{entity_id}",
    headers={"token": os.environ["YV_SECRET_KEY"]},
)

data = response.json()["data"]
print("Risk score:", data["riskScore"])
print("Profile status:", data["profileStatus"])
```

La réponse renvoie le canevas 360 complet de l'entité :

```json theme={null}
{
  "success": true,
  "status_code": 200,
  "message": "Entity retrieved successfully.",
  "data": {
    "id": "ent_685c73c8519d82bd21a42fae",
    "entityType": "individual",
    "firstName": "Jane",
    "lastName": "Doe",
    "email": "jane@example.com",
    "status": "not_approved",
    "profileStatus": "pending",
    "riskScore": 12,
    "riskLevel": "low",
    "isSubjectConsent": true,
    "verifications": [],
    "transactions": [],
    "signals": [],
    "activities": [],
    "cases": [],
    "createdAt": "2025-06-25T10:00:00.000Z",
    "updatedAt": "2025-06-25T10:00:00.000Z"
  },
  "links": []
}
```

## Et ensuite ?

Vous disposez d'une entité active avec un score de risque initial. Vous pouvez désormais enrichir son profil en y rattachant des vérifications et des données de transactions : chaque contrôle intègre ses résultats dans le même canevas 360, au lieu de créer un rapport distinct et orphelin.

> **[Lancer une vérification KYC](https://doc.youverify.co/api-reference/kyc)**
>
> Vérifiez l'identité d'un particulier à partir de documents officiels, de données biométriques ou de bases d'identité officielles.

> **[Lancer une vérification KYB](https://doc.youverify.co/api-reference/kyb)**
>
> Vérifiez les informations d'immatriculation d'une entreprise et récupérez son graphe de propriété UBO.

> **[Filtrage AML](https://doc.youverify.co/api-reference/aml)**
>
> Filtrez une entité par rapport aux listes de PEP, aux registres de sanctions et aux sources de médias négatifs.

> **[Concepts clés](https://doc.youverify.co/fr/concepts/entity-360.md)**
>
> Comprenez les entités, l'Entity 360, les scores de risque et le cycle de vie, de la création à la décision.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.