> For the complete documentation index, see [llms.txt](https://dataset-generation-doc.gitbook.io/dataset-generation-doc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dataset-generation-doc.gitbook.io/dataset-generation-doc/developpeur/configuration-de-dataset.md).

# Configuration de Dataset

## Générer un dataset (IDs de config OU contenu inline)

> Cette route lance une génération de dataset en \*\*mode dev\*\*.\
> \
> Vous pouvez fournir \*\*soit\*\* des identifiants de configuration (\`dataset\_config\_id\`, \`rules\_config\_id\`),\
> \*\*soit\*\* le contenu directement via \`yaml\_content\` et/ou \`rules\_content\`.\
> \
> • \`dataset\_config\_id\` \*(optionnel)\* : si renseigné, le contenu YAML stocké côté serveur \*\*remplace\*\* \`yaml\_content\`.\
> • \`rules\_config\_id\` \*(optionnel)\* : si renseigné, le contenu des règles côté serveur \*\*remplace\*\* \`rules\_content\`.\
> • \`yaml\_content\` \*(optionnel)\* : contenu YAML converti en JSON quand vous n'utilisez pas \`dataset\_config\_id\`.\
> • \`rules\_content\` \*(optionnel)\* : règles en JSON quand vous n'utilisez pas \`rules\_config\_id\`.\
> \
> Priorité : en cas de doublon, \*\*les IDs priment\*\* sur les contenus inline.\
> Crédit : le nombre de lignes (\`numberOfRecords\`) dans \`yaml\_content\` détermine la consommation de crédits.

```json
{"openapi":"3.1.0","info":{"title":"Syntetica Api Dataset Config Dev","version":"1.0.1"},"paths":{"/dev/generate_dataset":{"post":{"summary":"Générer un dataset (IDs de config OU contenu inline)","description":"Cette route lance une génération de dataset en **mode dev**.\n\nVous pouvez fournir **soit** des identifiants de configuration (`dataset_config_id`, `rules_config_id`),\n**soit** le contenu directement via `yaml_content` et/ou `rules_content`.\n\n• `dataset_config_id` *(optionnel)* : si renseigné, le contenu YAML stocké côté serveur **remplace** `yaml_content`.\n• `rules_config_id` *(optionnel)* : si renseigné, le contenu des règles côté serveur **remplace** `rules_content`.\n• `yaml_content` *(optionnel)* : contenu YAML converti en JSON quand vous n'utilisez pas `dataset_config_id`.\n• `rules_content` *(optionnel)* : règles en JSON quand vous n'utilisez pas `rules_config_id`.\n\nPriorité : en cas de doublon, **les IDs priment** sur les contenus inline.\nCrédit : le nombre de lignes (`numberOfRecords`) dans `yaml_content` détermine la consommation de crédits.","operationId":"generate_dataset_dev_generate_dataset_post","parameters":[{"name":"api_key","in":"query","required":true,"schema":{"type":"string","title":"Api Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateDatasetRequest"}}}},"responses":{"200":{"description":"Requête réussie — la liste des types Faker est renvoyée.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateDatasetResponse"}}}},"400":{"description":"API Key invalide","content":{"application/json":{}}},"401":{"description":"API Key invalide","content":{"application/json":{}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"GenerateDatasetRequest":{"properties":{"end_format":{"type":"string","title":"End Format","description":"Format de sortie souhaité (ex: csv, json)"},"yaml_content":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Yaml Content","description":"Contenu YAML sous forme d'objet JSON"},"rules_content":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Rules Content","description":"Règles optionnelles de génération"},"campaignid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Campaignid","description":"Identifiant de campagne, ignoré en mode dev"},"faker_name_dict":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Faker Name Dict","description":"Variables faker personnalisées"},"dataset_config_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dataset Config Id","description":"Identifiant d'une config dataset **optionnel**. Si fourni, il **remplace** `yaml_content`."},"rules_config_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rules Config Id","description":"Identifiant d'une config de règles **optionnel**. Si fourni, il **remplace** `rules_content`."}},"type":"object","required":["end_format"],"title":"GenerateDatasetRequest"},"GenerateDatasetResponse":{"properties":{"message":{"type":"string","title":"Message"},"process_id":{"type":"string","title":"Process Id"},"nb_credit_used":{"type":"integer","title":"Nb Credit Used"},"nb_credit_remaining":{"type":"integer","title":"Nb Credit Remaining"}},"type":"object","required":["message","process_id","nb_credit_used","nb_credit_remaining"],"title":"GenerateDatasetResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

## Vérifie le statut d'un processus de génération

> Cette route permet de vérifier le statut d'un dataset en cours de génération. Le \`process\_id\` est fourni en tant que paramètre de requête, il preivent de la requête de \`/dev/generate\_dataset\`. Un token développeur valide est requis pour accéder à cette route.Le statut retourné peut être : \`waiting\`, \`running\`, \`success\`, \`error\`, ou \`None\` si le processus est inconnu.Lorsque le statut est \`success\`, un champs supplémentaire \`s3\_url\` est retourné contenant le dataset généré. Attention, ce champs n'est disponible que 15 minutes avant expiration

```json
{"openapi":"3.1.0","info":{"title":"Syntetica Api Dataset Config Dev","version":"1.0.1"},"paths":{"/dev/ping_generation_process":{"get":{"summary":"Vérifie le statut d'un processus de génération","description":"Cette route permet de vérifier le statut d'un dataset en cours de génération. Le `process_id` est fourni en tant que paramètre de requête, il preivent de la requête de `/dev/generate_dataset`. Un token développeur valide est requis pour accéder à cette route.Le statut retourné peut être : `waiting`, `running`, `success`, `error`, ou `None` si le processus est inconnu.Lorsque le statut est `success`, un champs supplémentaire `s3_url` est retourné contenant le dataset généré. Attention, ce champs n'est disponible que 15 minutes avant expiration","operationId":"ping_generation_process_dev_ping_generation_process_get","parameters":[{"name":"process_id","in":"query","required":true,"schema":{"type":"string","description":"Identifiant unique du processus de génération","title":"Process Id"},"description":"Identifiant unique du processus de génération"},{"name":"api_key","in":"query","required":true,"schema":{"type":"string","description":"Clé API","title":"Api Key"},"description":"Clé API"}],"responses":{"200":{"description":"Requête réussie — le statut du processus de génération.","content":{"application/json":{"schema":{}}}},"400":{"description":"API Key invalide","content":{"application/json":{}}},"401":{"description":"API Key invalide","content":{"application/json":{}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"500":{"description":"Erreur interne du serveur.","content":{"application/json":{}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

## Vérifie si le dataset config est valide

> Cette route permet de vérifier si le dataset config est valideLe \`api\_key\` est requis pour accéder à cette route.Le paramètre \`yaml\_content\` est requis et doit contenir un dictionnaire de données.Il représente le contenu YAML converti en JSON.

```json
{"openapi":"3.1.0","info":{"title":"Syntetica Api Dataset Config Dev","version":"1.0.1"},"paths":{"/dev/check_dataset_config_is_valid":{"post":{"tags":["dev"],"summary":"Vérifie si le dataset config est valide","description":"Cette route permet de vérifier si le dataset config est valideLe `api_key` est requis pour accéder à cette route.Le paramètre `yaml_content` est requis et doit contenir un dictionnaire de données.Il représente le contenu YAML converti en JSON.","operationId":"check_dataset_config_is_valid_dev_check_dataset_config_is_valid_post","parameters":[{"name":"api_key","in":"query","required":true,"schema":{"type":"string","title":"Api Key"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Body_check_dataset_config_is_valid_dev_check_dataset_config_is_valid_post"}}}},"responses":{"200":{"description":"Requête réussie — le dataset config est valide.","content":{"application/json":{"schema":{}}}},"400":{"description":"API Key invalide","content":{"application/json":{}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"500":{"description":"Erreur interne du serveur.","content":{"application/json":{}}}}}}},"components":{"schemas":{"Body_check_dataset_config_is_valid_dev_check_dataset_config_is_valid_post":{"properties":{"yaml_content":{"type":"object","title":"Yaml Content","description":" dataset configuration convertie en json"},"end_format":{"type":"string","title":"End Format","description":"format du fichier yaml"}},"type":"object","required":["yaml_content","end_format"],"title":"Body_check_dataset_config_is_valid_dev_check_dataset_config_is_valid_post"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```
