# Créer une règle de composant

Availability-note[Bêta](https://help.talend.com/r/en-US/Cloud/labels-on-talend-help-center/availability-beta)

Contenu bêta

Dans ce scénario, utilisez les API Talend pour créer une règle de composant afin d'améliorer la qualité de votre projet.

## Pourquoi et quand exécuter cette tâche

Voici quelques détails concernant l'appel d'API :

```
Method: POST
endpoint: api/v1/projects/quality/rules/category/components
payload:
    {
    "name": "string",
    "description": "string",
    "severity": "Info",
    "category": "Component",
    "threshold": {
      "operator": "string",
      "value": 0,
      "type": "Percentage"
    },
    "components": [
      "string"
    ],
    "parameters": [
      "string"
    ],
    "inputs": [
      "string"
    ],
    "exists": true
  }
```

![API sélectionnée pour obtenir toutes les règles.](https://help.qlik.com/Resources/Images/qlik-talend-cloud-migration-toolkit-user-guide/tcmp-api-rules.png)

## Procédure

1. Appelez l'endpoint POST /api/v1/projects/quality/rules/category/component pour créer une règle pour les catégories Component. D'autres endpoints sont disponibles si vous souhaitez créer une règle pour une autre catégorie.
2. Dans la zone Body (Corps), saisissez les informations suivantes :
   | Nom du paramètre | Value (Valeur) |
   | --- | --- |
   | Name | Saisissez le nom de la règle. |
   | description | Saisissez la description de la règle. |
   | severity (sévérité) | Saisissez la sévérité de la règle. La sévérité se base sur l'impact de la règle sur la qualité du projet. Vous pouvez fournir l'un des types de sévérité suivants : Info, Minor, Major, Critical. |
   | operator | Spécifiez l'opérateur de comparaison pour comparer au seuil : &lt;=, \&gt;=, =, \&gt;= |
   | valeur | Saisissez une valeur pour le seuil. Cette valeur configure une limite, au-dessus ou au-dessous de laquelle la condition doit être respectée. Ce champ accepte les valeurs numériques à partir de 0. |
   | type | Saisissez l'un des types de seuils suivants : Percentage (Pourcentage) ou Numeric (Numérique). |
   | components | Saisissez le nom des connecteurs ou composants. |
   | parameters | Chaque composant ou nœud dans un Job peut comprendre des paramètres comme CODE, URL ou URI. Par exemple, le composant tJava comprend un paramètre CODE.<br><br>Chaque Job peut avoir des paramètres (PROJECT\_PARAMETER) comme IMPLICIT\_LOAD ou MULTI\_THREAD\_EXECUTION.<br><br>Chaque connexion peut comprendre des paramètres tels que PARTITIONER ou NUM\_PARTITIONS. |
   | inputs | Vous pouvez ajouter une liste d'expressions régulières ou de texte afin de valider la règle. |
   | EXISTS | Détermine si un composant spécifique existe dans le Job. Sa valeur peut être true ou false. |

   Exemple :
   ```
    {
       "name": "Java Logs",
       "description": "Identify Jobs that contain java logs",
       "severity": "Info",
       "category": "Component",
       "threshold": {
         "operator": "<=",
         "value": 0,
         "type": "Numeric"
       },
       "components": [
         "tJava", "tJavaFlex", "tJavaRow"
       ],
       "parameters": [
         "CODE", "CODE_START", "CODE_MAIN", "CODE_END"
       ],
       "inputs": [
         "System.out.print", "System.err.print"
       ],
       "exists": true
     }
   ```
3. Cliquez sur Execute (Exécuter) pour émettre votre appel.

## Résultats

La règle est créée.