Skip to main content
View as Markdown

Actions d'enregistrement et de fichier

La famille record lit et écrit des enregistrements de table (unitaire et par lots). La famille file effectue des opérations de stockage — upload, download, génération et transformation.

Record — CRUD de table

Les operators couvrent le CRUD ligne par ligne ainsi que les opérations par lots. Les lectures/mises à jour/suppressions utilisent un filter de groupe de conditions ; les créations/mises à jour portent une carte data. Les operators par lots itèrent sur un tableau items (un gabarit se résolvant en une liste).

Operator Props Description
create table, data Insère un enregistrement.
read table, filter Lit les enregistrements correspondant au filtre.
update table, data, filter Met à jour les enregistrements correspondant au filtre.
delete table, filter Supprime en douceur les enregistrements correspondant au filtre.
upsert table, data, filter Met à jour si une correspondance existe, sinon crée.
batchCreate table, items, batchSize?, continueOnItemError? Insère plusieurs enregistrements à partir d'un tableau.
batchUpdate table, items, batchSize?, continueOnItemError? Met à jour plusieurs enregistrements à partir d'un tableau.
batchUpsert table, items, batchSize?, continueOnItemError? Upsert de plusieurs enregistrements à partir d'un tableau.
batchDelete table, filter, limit? Supprime les enregistrements correspondant au filtre (plafonné par limit).
- name: logActivity
  type: record
  operator: create
  props:
    table: activity_log
    data:
      action: 'order.created'
      order_id: '{{trigger.data.id}}'
      occurred_at: '{{now}}'
- name: importRows
  type: record
  operator: batchCreate
  props:
    table: contacts
    items: '{{parseLeads.result}}'
    batchSize: 100
    continueOnItemError: true

File — Opérations de stockage

Quatorze operators couvrant le stockage, les métadonnées/accès, la génération et les transformations avancées. Ils opèrent sur le stockage configuré de Sovrium (local ou S3) — voir Opérations sur fichiers.

Stockage

Operator Props Description
upload source, path?, contentType? Téléverse un fichier vers le stockage.
download key Télécharge un fichier stocké par sa clé.
delete key Supprime un fichier stocké.
copy source, destination Copie un fichier stocké.
move source, destination Déplace/renomme un fichier stocké.
list prefix, limit? Liste les fichiers sous un préfixe.

Métadonnées et accès

Operator Props Description
getMetadata key Lit les métadonnées d'un fichier (taille, type de contenu, …).
signUrl key, expiresIn?, operation? Génère une URL signée à durée limitée (download / upload). Voir URL signées.

Génération

Operator Props Description
generatePdf template, filename, data?, pageSize?, orientation?, margins?, destination? Rend un gabarit HTML en PDF (A4/A3/Letter/Legal).
generateCsv data, filename, columns?, delimiter?, includeHeaders?, destination? Génère un CSV à partir d'un tableau.

Avancé

Operator Props Description
parseCsv source, columns?, skipRows?, delimiter? Analyse un fichier CSV en un tableau de lignes.
extractText source, format? Extrait le texte d'un document (plain / markdown).
transformImage source, width?, height?, fit?, format?, quality?, crop?, destination? Redimensionne/convertit une image (jpeg/png/webp/avif). Voir Transformations d'images.
compress files, filename, destination? Compresse plusieurs fichiers en une seule archive.
- name: invoice
  type: file
  operator: generatePdf
  props:
    template: invoice-template
    filename: 'invoice-{{trigger.data.id}}.pdf'
    data: '{{trigger.data}}'
    pageSize: A4
    orientation: portrait
    destination: invoices/
- name: thumbnail
  type: file
  operator: transformImage
  props:
    source: '{{upload.result.key}}'
    width: 320
    fit: cover
    format: avif
    quality: 70

Pages connexes