7.7 Passer une transition
7.7.1 URL
POST /api/v1/documents/<documentId>/workflows/transitions/<transitionId>
Le document documentId
passe la transition donné transitionId
. La
transition demandée doit exister à partir de l'état courant.
Exemple :
POST /api/v1/documents/<documentId>/workflows/transitions/my_transmission
7.7.2 Content
Le contenu est une structure JSON qui comprend les informations suivantes :
-
comment
: Texte à insérer dans l'historique -
parameters
: Liste des valeurs des paramètres indexés par leur identifiant
Exemple :
{ "comment" : "Mon commentaire de transition" "parameters": { "my_referencedate": "2015-06-23", "my_validation": "yes" } }
7.7.3 Structure de retour
Le retour est une donnée JSON.
7.7.3.1 En cas de réussite :
La partie data
contient :
-
uri
: URI préférentielle d'accès à la ressource; -
state
: Nouvel état du document-
id
: identifiant de l'état, -
isCurrentState
: indique si cet état est l'étape courante, -
label
: intitulé de l'état (localisé en fonction de la langue de l'utilisateur) -
activity
: intitulé de l'activité (localisé en fonction de la langue de l'utilisateur) -
displayValue
: intitulé calculé en fonction des valeurs de "activity" et "label" -
color
: code couleur (#RRGGBB) associé à l'état
-
Exemple :
{ "success": true, "messages": [ { "type": "warning", "contentText": "Avertissement : no mail template", "code": "WORKFLOW_TRANSITION" }, { "type": "notice", "contentText": "13:48 - Bulle changement d'état vers Transmis" } ], "data": { "state": { "id": "my_transmited", "isCurrentState": true, "label": "Transmis", "activity": "Vérification de l'adoption", "displayValue": "Vérification de l'adoption", "color": "#A8E5FF" } } }
7.7.3.2 En cas d'échec
Les raisons d'échecs spécifiques à cette requête sont
Raison | Status HTTP | Error Code |
---|---|---|
Échec de la transition (droit, m0, m1) | 403 Forbidden | CRUD0230 |
Pas de cycle de vie associé | 404 No workflow detected | CRUD0227 |
Transition invalide (non applicable depuis l'étape courante) | 404 Invalid transition | CRUD0235 |
Exemple :
{ "success": false, "messages": [ { "type": "error", "contentText": "Destination state is not defined for workflow \"Défaut demande adoption\" (1090)", "code": "CRUD0235" }, { "type": "message", "contentText": "You can consult ?app=HTTPAPI_V1 to have info on the API", "contentHtml": "You can consult <a href=\"?app=HTTPAPI_V1\">the REST page</a> to have info on the API" } ], "data": null, "exceptionMessage": "Destination state is not defined for workflow \"Défaut demande adoption\" (1090)" }