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 :

  1. comment : Texte à insérer dans l'historique
  2. 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 :

  1. uri : URI préférentielle d'accès à la ressource;
  2. state : Nouvel état du document
    1. id : identifiant de l'état,
    2. isCurrentState : indique si cet état est l'étape courante,
    3. label : intitulé de l'état (localisé en fonction de la langue de l'utilisateur)
    4. activity : intitulé de l'activité (localisé en fonction de la langue de l'utilisateur)
    5. displayValue : intitulé calculé en fonction des valeurs de "activity" et "label"
    6. 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)"
}
×