Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
CreateWorkflow
Vous permet de créer un flux de travail avec des étapes spécifiées et des détails d'étape que le flux de travail appelle une fois le transfert de fichiers terminé. Après avoir créé un flux de travail, vous pouvez associer le flux de travail créé à n'importe quel serveur de transfert en spécifiant le champ workflow-details
dans les opérations CreateServer
et UpdateServer
.
Syntaxe de la requête
{
"Description": "string
",
"OnExceptionSteps": [
{
"CopyStepDetails": {
"DestinationFileLocation": {
"EfsFileLocation": {
"FileSystemId": "string
",
"Path": "string
"
},
"S3FileLocation": {
"Bucket": "string
",
"Key": "string
"
}
},
"Name": "string
",
"OverwriteExisting": "string
",
"SourceFileLocation": "string
"
},
"CustomStepDetails": {
"Name": "string
",
"SourceFileLocation": "string
",
"Target": "string
",
"TimeoutSeconds": number
},
"DecryptStepDetails": {
"DestinationFileLocation": {
"EfsFileLocation": {
"FileSystemId": "string
",
"Path": "string
"
},
"S3FileLocation": {
"Bucket": "string
",
"Key": "string
"
}
},
"Name": "string
",
"OverwriteExisting": "string
",
"SourceFileLocation": "string
",
"Type": "string
"
},
"DeleteStepDetails": {
"Name": "string
",
"SourceFileLocation": "string
"
},
"TagStepDetails": {
"Name": "string
",
"SourceFileLocation": "string
",
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
},
"Type": "string
"
}
],
"Steps": [
{
"CopyStepDetails": {
"DestinationFileLocation": {
"EfsFileLocation": {
"FileSystemId": "string
",
"Path": "string
"
},
"S3FileLocation": {
"Bucket": "string
",
"Key": "string
"
}
},
"Name": "string
",
"OverwriteExisting": "string
",
"SourceFileLocation": "string
"
},
"CustomStepDetails": {
"Name": "string
",
"SourceFileLocation": "string
",
"Target": "string
",
"TimeoutSeconds": number
},
"DecryptStepDetails": {
"DestinationFileLocation": {
"EfsFileLocation": {
"FileSystemId": "string
",
"Path": "string
"
},
"S3FileLocation": {
"Bucket": "string
",
"Key": "string
"
}
},
"Name": "string
",
"OverwriteExisting": "string
",
"SourceFileLocation": "string
",
"Type": "string
"
},
"DeleteStepDetails": {
"Name": "string
",
"SourceFileLocation": "string
"
},
"TagStepDetails": {
"Name": "string
",
"SourceFileLocation": "string
",
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
},
"Type": "string
"
}
],
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
Paramètres de demande
Pour plus d'informations sur les paramètres courants pour toutes les actions, consultez Paramètres courants.
La demande accepte les données suivantes au JSON format suivant.
- Description
-
Description textuelle du flux de travail.
Type : String
Contraintes de longueur : Longueur minimum de 0. Longueur maximum de 256.
Modèle :
[\w- ]*
Obligatoire : non
- OnExceptionSteps
-
Spécifie les étapes (actions) à suivre en cas d'erreur lors de l'exécution du flux de travail.
Note
Pour les étapes personnalisées, la fonction Lambda doit renvoyer
FAILURE
au rappel pour API lancer les étapes d'exception. De plus, si le Lambda n'envoie pasSUCCESS
avant son expiration, les étapes d'exception sont exécutées.Type : tableau d’objets WorkflowStep
Membres du tableau : nombre minimum de 0 élément. Nombre maximum de 8 articles.
Obligatoire : non
- Steps
-
Spécifie les détails des étapes qui se trouvent dans le flux de travail spécifié.
TYPE
Spécifie laquelle des actions suivantes est entreprise pour cette étape.-
COPY
: copier le fichier à un autre emplacement. -
CUSTOM
- Effectuez une étape personnalisée avec une AWS Lambda fonction cible. -
DECRYPT
: déchiffrer un fichier chiffré avant d'être chargé. -
DELETE
: supprimer le fichier. -
TAG
: ajouter une balise au fichier.
Note
Actuellement, la copie et le balisage ne sont pris en charge que sur S3.
Pour l'emplacement des fichiers, vous spécifiez soit le compartiment et la clé Amazon S3, soit l'ID et le chemin du système de EFS fichiers Amazon.
Type : tableau d’objets WorkflowStep
Membres du tableau : nombre minimum de 0 élément. Nombre maximum de 8 articles.
Obligatoire : oui
-
- Tags
-
Paires clé-valeur qui peuvent être utilisées pour regrouper et rechercher des flux de travail. Les balises sont des métadonnées associées aux flux de travail pour différents motifs.
Type : tableau d’objets Tag
Membres du tableau : Nombre minimum de 1 élément. Nombre maximal de 50 éléments.
Obligatoire : non
Syntaxe de la réponse
{
"WorkflowId": "string"
}
Eléments de réponse
Si l'action aboutit, le service renvoie une réponse HTTP 200.
Les données suivantes sont renvoyées sous JSON forme formatée par le service.
- WorkflowId
-
Un identifiant unique pour le flux de travail.
Type : String
Contraintes de longueur : longueur fixe de 19.
Modèle :
w-([a-z0-9]{17})
Erreurs
Pour plus d'informations sur les erreurs courantes pour toutes les actions, consultez Erreurs courantes.
- AccessDeniedException
-
Vous ne disposez pas d’un accès suffisant pour effectuer cette action.
HTTPCode de statut : 400
- InternalServiceError
-
Cette exception est levée lorsqu'une erreur se produit dans le AWS Transfer Family service.
HTTPCode de statut : 500
- InvalidRequestException
-
Cette exception est levée lorsque le client soumet une demande mal formée.
HTTPCode de statut : 400
- ResourceExistsException
-
La ressource demandée n'existe pas ou existe dans une région autre que celle spécifiée pour la commande.
HTTPCode de statut : 400
- ServiceUnavailableException
-
La demande a échoué car le service AWS Transfer Family n'est pas disponible.
HTTPCode de statut : 500
- ThrottlingException
-
La demande a été refusée suite à une limitation des demandes.
HTTPCode de statut : 400
Exemples
Exemple
Vous pouvez enregistrer les informations relatives aux étapes du flux de travail dans un fichier texte, puis utiliser ce fichier pour créer un flux de travail, comme dans l'exemple suivant. L'exemple suivant suppose que vous avez enregistré les étapes de votre flux de travail dans
example-file.json
(dans le même dossier à partir duquel vous exécutez la commande), et que vous souhaitez créer le flux de travail dans la région Virginie du Nord (us-east-1).
aws transfer create-workflow --description "example workflow from a file" --steps file://example-file.json --region us-east-1
// Example file containing workflow steps [ { "Type": "TAG", "TagStepDetails": { "Name": "TagStep", "Tags": [ { "Key": "name", "Value": "testTag" } ] } }, { "Type": "COPY", "CopyStepDetails": { "Name": "CopyStep", "DestinationFileLocation": { "S3FileLocation": { "Bucket": "DOC-EXAMPLE-BUCKET", "Key": "DOC-EXAMPLE-KEY/" } }, "OverwriteExisting": "TRUE", "SourceFileLocation": "${original.file}" } }, { "Type": "DELETE", "DeleteStepDetails":{ "Name":"DeleteStep", "SourceFileLocation": "${original.file}" } } ]
Exemple
L'CreateWorkflow
appel renvoie l'ID du nouveau flux de travail.
Exemple de réponse
{
"WorkflowId": "w-1234abcd5678efghi"
}
consultez aussi
Pour plus d'informations sur son utilisation API dans l'une des langues spécifiques AWS SDKs, consultez ce qui suit :