Aller au contenu

Indexation

Cette page décrit les contrats publics utilisés par le formulaire d'indexation et l'exécution de ses actions. Ces routes ne décrivent pas les modèles d'indexation.

Toutes les routes nécessitent une authentification.

Lister les actions d'un groupe

GET /rest/indexing/groups/{groupId}/actions
Paramètre URL Type Obligatoire Description
groupId integer Oui Groupe auquel appartient le compte courant et autorisé à indexer

Le retour 200 contient actions. Chaque action expose notamment id, label, component, parameters, enabled et categories.

Code HTTP Message confirmé
400 Param groupId must be an integer val
403 This user is not in this group
403 This group can not index document
403 Invalid indexation parameters for this group

Lister les entités d'indexation d'un groupe

GET /rest/indexing/groups/{groupId}/entities

Le retour 200 contient entities, une arborescence aplatie des entités autorisées. Chaque entrée contient notamment id, entity_id, entity_label, parent_entity_id, enabled et level.

Calculer la date limite de traitement

GET /rest/indexing/processLimitDate
Paramètre query string Type Obligatoire Description
doctype integer Non Type de courrier dont le délai est utilisé
priority integer Non Priorité dont le délai est utilisé, remplace le délai du type
today boolean Non Force un délai nul lorsqu'il vaut true

Le retour 200 contient processLimitDate au format YYYY-MM-DD, ou null lorsqu'aucun délai n'est déterminé. Le calcul tient compte de la configuration des jours ouvrés.

Code HTTP Message confirmé
400 Doctype does not exists
400 Priority does not exists
400 today is not a boolean
400 Delay is not a numeric value

Obtenir les contraintes de fichier

GET /rest/indexing/fileInformations

Le retour 200 contient :

Donnée Type Description
informations.maximumSize integer Taille maximale calculée depuis la configuration PHP
informations.maximumSizeLabel string Taille formatée en mégaoctets
informations.allowedFiles array Extensions autorisées par la configuration

Déduire une priorité depuis une date limite

GET /rest/indexing/priority?processLimitDate=<date>
Paramètre query string Type Obligatoire Description
processLimitDate string de date Oui Date limite utilisée pour sélectionner la priorité

Le retour 200 contient priority, identifiant de la priorité retenue. Une valeur absente retourne 400 avec Query params processLimitDate is empty.

Exécuter une action d'indexation

PUT /rest/indexing/groups/{groupId}/actions/{actionId}
Paramètre URL Type Obligatoire Description
groupId integer Oui Groupe lié au compte courant
actionId integer Oui Action déclarée dans les paramètres d'indexation du groupe
Champ body Type Obligatoire Description
resource integer Oui Courrier temporaire à traiter
data array Non Données attendues par le composant de l'action
note array Non Note transmise à la terminaison de l'action
{
  "resource": 42,
  "data": [],
  "note": []
}

La structure de data dépend du composant d'action et n'est pas un contrat générique stable.

Code HTTP Description ou message confirmé
200 Données renvoyées par le composant d'action lorsqu'il en fournit
204 Action exécutée sans contenu de retour
400 Body resource is empty or not an integer
400 Route groupId does not exist
400 Group is not linked to this user
400 Action is not linked to this group
400 Action component does not exist ou Action method does not exist
400 Resource does not exist ou Resource out of perimeter