Format CSV

Cette section décrit comment enregistrer les données de réponse au format CSV.

Hiérarchie

Le format CSV ne prend pas en charge la hiérarchie. Pour représenter un modèle avec une hiérarchie, les noms des propriétés dans le CSV sont donc concaténés avec un point (.) séparant chaque niveau de hiérarchie.

Représentation JSON :
[
  { 
    "Name": "Scan1",
    "LastSuccessfulExecution": {
      "CreatedAt": "2021-04-18T07:13:58Z",
      "Status": "Ready",
    }
  },
  {
    "Name": "Scan2",
    "LastSuccessfulExecution": {
      "CreatedAt": "2021-04-17T20:53:40.33Z",
      "Status": "Ready",
    }
  }
]
Représentation CSV équivalente :
Name,LastSuccessfulExecution.CreatedAt,LastSuccessfulExecution.Status,
Scan1,2021-04-18 07:13:58,Ready
Scan2,2021-04-17 20:53:40,Ready

Tableaux

Les propriétés du tableau ne sont pas actuellement prises en charge. Si le modèle renvoyé contient une propriété de type « tableau », cette propriété est omise lorsque le format de réponse est CSV.

Date et heure

La date et l'heure d'une réponse CSV sont toujours UTC.

Ordre des propriétés

  • Si la réponse contient toutes les propriétés et aucun paramètre $select, l'ordre des propriétés sera suivi dans l'exemple de réponse JSON (dans la fonction correspondante dans Swagger).
  • Si la réponse contient uniquement les propriétés sélectionnées (colonnes) à l'aide du paramètre $select, l'ordre des colonnes dans le CSV suivra la façon dont les propriétés s'affichent dans le paramètre $select.
  • Si la réponse contient une propriété étendue (à l'aide du paramètre $expand dans la requête), les colonnes contenant des propriétés étendues apparaissent toujours avant les autres colonnes.

Encodage

Le codage du corps de la réponse CSV est UTF-8 avec BOM au début de la réponse.

A l'aide de ce codage, si la réponse est stockée dans un fichier avec une extension .CSV, elle peut être ouverte depuis Excel et prend en charge les caractères Unicode.

Jeux de données de grande taille

Le nombre d'éléments renvoyés par un seul appel API est limité à 30 000.

Si les données demandées dépassent cette limite, seuls les 30 000 premiers éléments seront renvoyés.

Si les données requises dépassent la limite, elles peuvent être extraites à l'aide de plusieurs requêtes allant jusqu'à 10 000 éléments chacune.

Pour ce faire, utilisez les paramètres de requête $top et $skip.

Le paramètre $top détermine le nombre d'éléments à extraire. Il est limité à 10 000 éléments.

Le paramètre $skip détermine le nombre d'éléments à ignorer.

Par exemple, si le jeu de données contient 45 000 éléments et qu'ils sont tous requis, les cinq requêtes suivantes peuvent être utilisées :
$top=10000&$skip=
$top=10000&$skip=10000
$top=10000&$skip=20000
$top=10000&$skip=30000
$top=10000&$skip=40000

Notez que, pour la dernière requête, seuls 5 000 éléments seront renvoyés, indiquant qu'il n'y a plus rien à extraire.