Points de terminaison du workflow
Points de terminaison et paramètres de workflows
Pour en savoir plus sur les relations d'objets et sur leur utilisation dans l'API, consultez la section Relations d'objets .
Pour plus d'informations à propos des workflows, consultez la page d'aide Workflows .
Charger un nouveau workflow
Pour charger un nouveau workflow, utilisez le point de terminaison
POST {baseURL}/v3/workflows
.
Paramètres
file (fichier) : obligatoire. Sélectionnez le fichier réel que vous souhaitez charger dans le système. Le type de support doit être un fichier YXZP.
name (chaîne) : obligatoire. Saisissez un nom de workflow. Il s'agit du nom du workflow à afficher dans l'interface utilisateur Server.
ownerId (chaîne) : obligatoire. Saisissez l'ID du propriétaire.
workerTag (chaîne) : facultatif. Indiquez la balise worker définie dans les workers pour attribuer des tâches à certains nœuds worker. Pour plus d'informations, consultez la page d'aide Worker .
districtTags (chaîne) : facultatif. Soumettez sous forme de tableau au format JSON, par exemple, ["id1", "id2"]. Utilisez les catégories pour regrouper les workflows publics partagés par balise, afin que les utilisateurs puissent les trouver facilement. Pour plus d'informations, consultez la page d'aide Catégories .
comments (chaîne) : facultatif. Saisissez vos commentaires.
isPublic (booléen) : obligatoire. Sélectionnez « true » pour rendre le workflow accessible au public. Sélectionnez « false » pour rendre le workflow privé et inaccessible au public.
isReadyForMigration (booléen) : obligatoire. Indiquez si le workflow est prêt à être migré. Pour plus d'informations sur la migration d'un environnement Server à un autre, consultez la page d'aide Activer les workflows pour la migration .
sourceAppId (chaîne) : facultatif. Définit l'ID de l'application source d'un workflow. Vous pouvez l'utiliser en tant que référence « sourceId » pour le point de terminaison
POST admin/v1/workflows
. Si vous fournissez un ID d'application source préexistant, la demande sera non valide.othersMayDownload (booléen) : obligatoire. Indiquez si les autres utilisateurs peuvent télécharger ce workflow.
othersCanExecute (booléen) : obligatoire. Indiquez si les autres utilisateurs peuvent exécuter ce workflow.
executionMode (chaîne) : obligatoire. Les valeurs acceptées sont « Safe », « SemiSafe » et « Standard ». Pour plus d'informations sur le mode d'exécution, consultez la page d'aide Modes d'exécution sécurisé et semi-sécurisé : outils bloqués, événements et connecteurs de données .
hasPrivateDataExemption (booléen) : facultatif. Accordez une exemption pour permettre l'exécution d'un workflow avec des données privées. Sélectionnez « true » pour autoriser une exemption ou « false » pour refuser une exemption. Pour plus d'informations, consultez la page Options de workflow dans l'interface d'administration .
workflowCredentialType (chaîne) : obligatoire. Les valeurs acceptées sont « Default », « Required » et « Specific ».
credentialId (chaîne) : facultatif. Indiquez l'ID d'identification pour ce workflow.
collectionIds (chaîne) : facultatif. Saisissez le(s) Id(s) de collection où ce workflow doit être ajouté. Soumettez sous forme de tableau au format JSON, par exemple : ["id1", "id2"].
Charger une nouvelle version dans un workflow existant
Pour charger une nouvelle version d'un workflow existant, utilisez le point de terminaison
POST {baseURL}/v3/workflows/{workflowId}/versions
endpoint.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow dont vous souhaitez charger une nouvelle version.
file (file) : obligatoire. Sélectionnez le fichier réel que vous souhaitez charger dans le système en tant que nouvelle version. Le type de support doit être un fichier YXZP.
name (string) : obligatoire. Saisissez le nom du workflow. Il s'agit du nom du workflow à afficher dans l'interface utilisateur Server.
ownerId (chaîne) : obligatoire. Saisissez l'ID du propriétaire.
othersMayDownload (booléen) : obligatoire. La valeur par défaut est « true ».
othersCanExecute (booléen) : obligatoire. La valeur par défaut est « true ».
executionMode (chaîne) : obligatoire. Les valeurs acceptées sont « Safe », « SemiSafe » et « Standard ». Pour plus d'informations sur le mode d'exécution, consultez la page d'aide Modes d'exécution sécurisé et semi-sécurisé : outils bloqués, événements et connecteurs de données .
hasPrivateDataExemption (booléen) : facultatif. Accordez une exemption pour permettre l'exécution d'un workflow avec des données privées. Sélectionnez « true » pour autoriser une exemption ou « false » pour refuser une exemption. Pour plus d'informations, consultez la page Options de workflow dans l'interface d'administration .
comments (chaîne) : facultatif. Saisissez vos commentaires.
makePublished (booléen) : obligatoire. La valeur par défaut est « true ». Le paramètre makePublished permet de contrôler si la nouvelle version d'un workflow que vous transmettez à Server doit être la version publiée ou non. Si vous définissez la valeur sur « false » lorsque vous transmettez le workflow à Server, vous seul aurez la possibilité de l'exécuter.
workflowCredentialType (chaîne) : obligatoire. Saisissez le type d'informations d'identification à utiliser pour ce workflow. Les valeurs acceptées sont « Default », « Required » et « Specific ».
credentialId (chaîne) : facultatif. Indiquez l'Id d'identification pour ce workflow. Pour plus d'informations sur les points de terminaison d'informations d'identification, accédez à Points de terminaison d'informations d'identification .
Récupérer tous les workflows
Pour obtenir des informations sur tous les enregistrements de workflow, utilisez le point de terminaison
GET {baseURL}/v3/workflows/
.
Paramètres
view (chaîne) : facultatif. Sélectionnez le mode d'affichage des informations du workflow. Peut être laissé sans valeur. Vous pouvez choisir parmi les valeurs suivantes : « Default » et « Full ». Si ce paramètre est défini sur « Default », un objet de vue réduite est renvoyé. Lorsqu'elle n'est pas spécifiée, la valeur « Default » est utilisée.
name (chaîne) : facultatif. Saisissez le nom du workflow si vous souhaitez filtrer les workflows par nom. Il s'agit du nom du workflow affiché dans l'interface utilisateur Server.
ownerId (chaîne) : facultatif. Saisissez l'ID du propriétaire si vous souhaitez filtrer les workflows selon leurs propriétaires.
createdAfter (chaîne) : facultatif. Saisissez la date et l'heure après laquelle le workflow a été créé. Saisissez la date et l'heure au format ISO8601.
createdBefore (chaîne) : facultatif. Saisissez la date et l'heure avant laquelle le workflow a été créé. Saisissez la date et l'heure au format ISO8601.
Exemple de demande : cURL
curl --location --request GET 'http://localhost/webapi/v3/workflows' \ --header 'Authorization: Bearer BearerTokenGoesHere'
Récupérer un enregistrement de workflow spécifique
Pour obtenir des informations sur un workflow spécifique, utilisez le point de terminaison
GET {baseURL}/v3/workflows/{workflowId}
.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow pour obtenir des informations sur ce workflow.
Exemple de demande : cURL
curl --location --request GET 'http://localhost/webapi/v3/workflows/61db393fc565144387d451fb' \ --header 'Authorization: Bearer BearerTokenGoesHere'
Mettre à jour un workflow existant
Pour modifier les informations d'un workflow existant, utilisez le point de terminaison
PUT {baseURL}/v3/workflows/{workflowId}
.
Note
Pour modifier la valeur ownerId, le nouveau propriétaire doit disposer de la même souscription que le propriétaire actuel.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow que vous souhaitez mettre à jour.
updateWorkflowContract (corps) : obligatoire. Saisissez les informations du workflow à mettre à jour.
name (chaîne) : obligatoire. Saisissez le nom du workflow. Il s'agit du nom du workflow à afficher dans l'interface utilisateur Server.
versionId (chaîne) : obligatoire. Saisissez l'ID de la version.
makePublished (booléen) : facultatif. Lorsqu'elle n'est pas spécifiée, la valeur reste la même qu'avant. Le paramètre makePublished permet de contrôler si la nouvelle version d'un workflow que vous transmettez à Server doit être la version publiée ou non. Si vous définissez la valeur sur « false » lorsque vous transmettez le workflow à Server, vous seul aurez la possibilité de l'exécuter.
ownerId (chaîne) : obligatoire. Saisissez l'ID du propriétaire.
workerTag (chaîne) : obligatoire. Lorsqu'il n'y a pas de workerTag, utilisez "" à la place.
districtTags (chaîne) : obligatoire. Saisissez les balises de catégories. Utilisez les catégories pour regrouper les workflows publics partagés par balise, afin que les utilisateurs puissent les trouver facilement. Pour plus d'informations, consultez la page d'aide Catégories .
comments (chaîne) : obligatoire. Saisissez vos commentaires.
isPublic (booléen) : facultatif. Lorsqu'elle n'est pas spécifiée, la valeur reste la même qu'avant.
isReadyForMigration (booléen) : facultatif. Lorsqu'elle n'est pas spécifiée, la valeur reste la même qu'avant.
othersMayDownload (booléen) : facultatif. Lorsqu'elle n'est pas spécifiée, la valeur reste la même qu'avant. Lorsque la valeur est définie sur « false » pour un workflow public, le workflow est inutilisable.
othersCanExecute (booléen) : facultatif. Lorsqu'elle n'est pas spécifiée, la valeur reste la même qu'avant. Lorsque la valeur est définie sur « false » pour un workflow public, le workflow est inutilisable.
executionMode (chaîne) : facultatif. Les valeurs acceptées sont « Safe », « SemiSafe », « Standard ». Pour plus d'informations sur le mode d'exécution, consultez la page d'aide Modes d'exécution sécurisé et semi-sécurisé : outils bloqués, événements et connecteurs de données .
hasPrivateDataExemption (booléen) : facultatif. Accordez une exemption pour permettre l'exécution d'un workflow avec des données privées. Sélectionnez « true » pour autoriser une exemption ou « false » pour refuser une exemption. Lorsqu'elle n'est pas spécifiée, la valeur reste la même qu'avant. Pour plus d'informations, consultez la page Options de workflow dans l'interface d'administration .
Télécharger un package de workflow
Pour télécharger un package de workflow, utilisez le point de terminaison
GET {baseURL}/v3/workflows/{workflowId}/package
.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow pour lequel vous souhaitez télécharger un package.
versionId (chaîne) : facultatif. Saisissez l'ID de version spécifique d'un workflow. Si aucune version n'est fournie, la version publiée est téléchargée.
Note
Si l'ID de version est à deux chiffres, il peut atteindre la limite de taille et vous risquez d'obtenir une erreur « 414 - URI trop long ». Dans ce cas, analysez la chaîne JSON versionID et ajustez-la à la version la plus récente. La longueur du champ sera ainsi maîtrisée.
Exemple de demande : cURL
curl -X GET --header 'Accept: application/octet-stream' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4be7dc6e24bb8ff0/package'
Récupérer les informations sur une question pour un workflow
Pour obtenir des informations sur une question pour un workflow, utilisez le point de terminaison
GET {baseURL}/v3/workflows/{workflowId}/questions
.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow dont vous souhaitez récupérer les informations.
versionId (chaîne) : facultatif. Saisissez l'ID de version spécifique d'un workflow. Si aucune version n'est fournie, la version publiée est utilisée.
Exemple de demande : cURL
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4bc6e24b78d0b8ff0/questions'
Obtenir des informations sur les tâches pour un workflow spécifique
Pour obtenir des informations sur les tâches pour un workflow spécifique, utilisez le point de terminaison
GET {baseURL}/v3/workflows/{workflowId}/jobs
.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow dont vous souhaitez récupérer les informations.
sortField (chaîne) : facultatif.
direction (chaîne) : facultatif.
offset (chaîne) : facultatif.
limit (chaîne) : facultatif.
Exemple de demande : cURL
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a4be6e24b78d0b8ff0/jobs'
Supprimer un workflow
Pour supprimer un workflow spécifique, utilisez le point de terminaison
DELETE {baseURL}/v3/workflows/{workflowId}
.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez l'ID du workflow à supprimer.
force (booléen) : facultatif. Lorsque cette option n'est pas sélectionnée, la valeur par défaut est « false ». Si un workflow est planifié, le paramètre défini sur « true » supprimera toutes les planifications avant de le supprimer.
Exemple de demande : cURL
curl -X DELETE --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' 'http://localhost/webapi/v3/workflows/635a752fdc6e278d0ba40b'
Créer une nouvelle tâche
Pour créer une nouvelle tâche et l'ajouter à la file d'attente, utilisez le point de terminaison
POST /v3/workflows/{workflowId}/jobs
.
Paramètres
workflowId (chaîne) : obligatoire. Saisissez un ID de workflow que vous souhaitez planifier.
contract (corps) : pour créer une nouvelle tâche, spécifiez les paramètres suivants :
workerTag (chaîne) : facultatif. Indiquez le worker affecté. S'il n'est pas précisé, la valeur sera « none ».
credentialId (chaîne) : facultatif. Indiquez l'Id d'identification pour ce workflow.
questions (chaîne) : facultatif. Pour une application analytique, spécifiez les questions et réponses pour exécuter le workflow.
priority (chaîne) : facultatif. Précisez la priorité de l'exécution de la planification. Choisissez parmi les options suivantes : « Low », «Medium », « High » et « Critical ». Si elle n'est pas précisée, la valeur par défaut sera « Low ».
EXEMPLE DE DEMANDE : cURL
Exemple de demande de création d'une tâche :
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer BearerTokenGoesHere' -d '{ \ "workerTag": "", \ "credentialId": "", \ "questions": [], \ "priority": "Low" \ }' 'http://localhost/webapi/v3/workflows/651faa8bde3e5381fd0dac29/jobs'{ "workerTag": "tag1", "credentialId": "652e6f90ea174cd34f6779d2", "questions": [ { "name": "Drop_Down", "value": "true" } ], "priority": "Low"}
Transfer Workflows and Schedules to a Specified Owner
To transfer a specific workflow to a specific owner, together with schedules if desired, use the PUT {baseURL}/v3/workflows/{workflowId}/transfer
endpoint.
Note
Only Curators can use this API endpoint.
If any of the workflows require DCM connections, Server connections, or specific run as credentials to run, these items need to be updated before the workflow can run.
If users are not in the same studio and when a workflow is transferred to the new studio, all other users in the new owner's studio will also receive access to the workflow, and all users from the old studio will lose access.
Workflows can only be transferred to a user with the Artisan or Curator role.
If transferring schedules, the new owner must have access to the scheduled workflow, otherwise you won’t be able to transfer that workflow to the new owner.
If transferring schedules, the new owner must have permission to schedule workflows.
If the user is deleted, it returns a list of schedule Ids that will be broken or disabled after transfer.
Parameters
workflowId (string): Required. Specify the Id of the workflow to transfer.
contract (body): Required. Specify the following information:
ownerId (string): Specify the Id of the new owner.
transferSchedules (Boolean): Specify whether the schedules should be transferred to a new owner together with the workflow. Only the schedules owned by the current workflow owner will be transferred to the new owner.
Request Example: cURL
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ "ownerId": "63d17f6cb049da66d0afd4e2", \ "transferSchedules": true \ }' 'http://localhost/webapi/v3/workflows/7917969784f84bd09442f66996ecb8f3/transfer'
Relations d'objets
Si vous chargez un workflow, vous pouvez utiliser les objets créés comme suit :
Objet créé : « workflowId » (par exemple, "id" : "7917969784f84bd09442f66996ecb8f3")
Vous pouvez l'utiliser comme :
workflowId si vous ajoutez des workflows à une collection .
appId si vous retirez des workflows d'une collection .
workflowId si vous recherchez un workflow spécifique .
workflowId si vous supprimez un workflow spécifique .
workflowId si vous mettez à jour un workflow existant .
workflowId si vous chargez une nouvelle version d'un workflow existant .
workflowId si vous recherchez une planification .
workflowId si vous créez une planification .
workflowId si vous téléchargez un package de workflow .
workflowId si vous souhaitez récupérer les informations sur une question pour un workflow .
workflowId si vous souhaitez obtenir des informations sur les tâches pour un workflow .
Exemples de demandes Postman
GET /v3/workflows/{workflowId}
Pour en savoir plus sur les demandes Postman, consultez la page d'aide Comment utiliser Postman .