Tous les produits
Search
Centre de documentation

:CreateFileCompressionTask

Dernière mise à jour :Aug 07, 2026

Télécharge des packages.

Description de l'opération

Remarque

Cette API est en version préliminaire publique. Si vous avez des questions, rejoignez notre groupe DingTalk pour nous faire part de vos commentaires. Pour obtenir le numéro du groupe, consultez Contactez-nous.

Remarque

Cette API prend actuellement en charge la création de packages, mais pas la compression. La fonctionnalité de compression sera ajoutée ultérieurement.

  • Avant d'utiliser cette API, assurez-vous de bien comprendre les méthodes de facturation et la tarification d'Intelligent Media Management (IMM).

    Important Le temps d'exécution des tâches asynchrones n'est pas garanti.

  • Limite du nombre de fichiers : vous pouvez inclure jusqu'à 80 000 fichiers dans un package.

  • Limite de taille des fichiers : la taille totale de tous les fichiers avant la création du package ne doit pas dépasser 200 Go.

  • Cette fonctionnalité prend en charge les fichiers de la classe de stockage Standard sur OSS. Pour inclure des fichiers d'autres classes de stockage dans un package, convertissez d'abord leur classe de stockage.

  • Il s'agit d'une API asynchrone. Une fois qu'une tâche démarre, ses informations sont stockées pendant 7 jours. Passé ce délai, les informations ne peuvent plus être récupérées. Pour consulter les informations de la tâche, appelez l'opération GetTask ou ListTasks avec le TaskId renvoyé. Vous pouvez également définir le paramètre Notification pour recevoir les informations de la tâche via des messages de notification asynchrones.

Testez maintenant

Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.

Test

Autorisation RAM

Le tableau ci-dessous décrit les autorisations nécessaires pour appeler cette API. Vous pouvez les définir dans une politique Resource Access Management (RAM). Les colonnes du tableau sont détaillées ci-dessous :

  • Action : les actions peuvent être utilisées dans l'élément Action des instructions de politique de permissions RAM pour accorder les autorisations nécessaires à l'exécution de l'opération.

  • API : l'API que vous pouvez appeler pour exécuter l'action.

  • Niveau d'accès : le niveau d'accès prédéfini accordé pour chaque API. Valeurs valides : create, list, get, update et delete.

  • Type de ressource : le type de ressource qui prend en charge l'autorisation pour exécuter l'action. Il indique si l'action prend en charge les permissions au niveau de la ressource. La ressource spécifiée doit être compatible avec l'action. Sinon, la politique sera inefficace.

    • Pour les API avec permissions au niveau de la ressource, les types de ressource requis sont marqués d'un astérisque (*). Spécifiez l'Alibaba Cloud Resource Name (ARN) correspondant dans l'élément Resource de la politique.

    • Pour les API sans permissions au niveau de la ressource, la valeur All Resources est affichée. Utilisez un astérisque (*) dans l'élément Resource de la politique.

  • Clé de condition : les clés de condition définies par le service. La clé permet un contrôle granulaire, applicable aux actions seules ou aux actions associées à des ressources spécifiques. En plus des clés de condition propres au service, Alibaba Cloud fournit un ensemble de clés de condition communes applicables à tous les services pris en charge par RAM.

  • Action dépendante : les actions dépendantes requises pour exécuter l'action. Pour mener à bien l'opération, l'utilisateur RAM ou le rôle RAM doit disposer des permissions pour toutes les actions dépendantes.

imm:CreateFileCompressionTask

create

*Project

acs:imm:{#regionId}:{#accountId}:project/{#ProjectName}

Aucune Aucune

Paramètres de requête

Paramètre

Type

Requis

Description

Exemple

ProjectName

string

Oui

Le nom du projet. Pour plus d'informations, consultez Créer un projet.

test-project

Sources

array<object>

Non

Liste des fichiers à empaqueter et de leurs règles d'empaquetage.

Remarque

Spécifiez ce paramètre ou SourceManifestURI. Sources prend en charge un maximum de 100 règles d'empaquetage.

Avertissement Si vous avez plus de 100 règles d'empaquetage, utilisez le paramètre SourceManifestURI.

object

Non

L'adresse OSS d'un fichier à empaqueter et sa règle d'empaquetage.

URI

string

Non

L'adresse OSS du répertoire ou du fichier à empaqueter.

L'adresse OSS doit être au format oss://${Bucket}/${Object}. ${Bucket} est le nom du bucket OSS qui se trouve dans la même région que le projet actuel. ${Object} est décrit comme suit :

  • Pour empaqueter un répertoire, ${Object} est le nom du répertoire.

  • Pour empaqueter un fichier, ${Object} est le chemin d'accès complet du fichier, y compris l'extension du nom de fichier.

oss://test-bucket/test-object

Alias

string

Non

Spécifie un nouveau chemin d'accès ou un nouveau nom pour le fichier source dans le fichier compressé de sortie.

  • Si vous ne spécifiez pas ce paramètre, la structure du répertoire source est conservée. Par exemple, si le fichier source se trouve à l'adresse oss://test-bucket/test-dir/test-object.doc, le chemin d'accès du fichier dans le fichier compressé est /test-dir/test-object.doc.

  • Renomme le fichier. Par exemple, si le fichier source se trouve à l'adresse oss://test-bucket/test-object.jpg et que vous définissez ce paramètre sur /test-rename-object.jpg, le fichier dans le fichier compressé est nommé test-rename-object.jpg.

  • Spécifie un nouveau chemin d'accès pour le fichier source dans le fichier compressé. Par exemple, si le répertoire source est oss://test-bucket/test-dir/ et que vous définissez ce paramètre sur /new-dir/, tous les fichiers du répertoire source sont compressés dans le chemin d'accès /new-dir/.

  • Définissez la valeur sur / pour supprimer la structure du répertoire source. Tous les fichiers sont placés directement dans le répertoire racine du fichier compressé et la structure de répertoire d'origine n'est pas conservée.

  • Spécifie à la fois un chemin d'accès et un nom de fichier. Le fichier est renommé et déplacé vers le chemin d'accès spécifié. Par exemple, si vous définissez ce paramètre sur /new-dir/alias.doc, le fichier est renommé en alias.doc et placé dans le chemin d'accès /new-dir/ du fichier compressé.

Remarque
  • Évitez de créer des fichiers avec des noms en double lors du processus de renommage. S'il existe des noms en double, il se peut que vous ne puissiez pas décompresser le fichier dans le package compressé. Cela dépend du programme de décompression que vous utilisez.

  • Exigence de format : la valeur doit commencer par une barre oblique (/), comme /new-dir/alias.doc.

/new-dir/

Mode

string

Non

Mode de correspondance de modèles pour la règle d'empaquetage. Valeurs valides : prefix (correspondance de préfixe) et fullname (correspondance exacte). Valeur par défaut : prefix.

  • prefix : dans ce mode, tous les fichiers qui correspondent au préfixe sont empaquetés.

  • fullname : dans ce mode, seul le fichier qui correspond exactement à la règle est empaqueté.

Valeurs valides :

  • prefix :

    prefix.

  • fullname :

    fullname.

fullname

CredentialConfig CredentialConfig

Non

Si vous n'avez pas d'exigences particulières, laissez ce paramètre vide.

Configuration de l'autorisation chaînée. Ce paramètre n'est pas requis. Pour plus d'informations, consultez Utiliser l'autorisation chaînée pour accéder aux ressources d'autres entités.

SourceManifestURI

string

Non

Adresse où le manifeste de fichiers est stocké. Le manifeste de fichiers stocke la structure Sources au format JSON sur OSS. Cela convient aux scénarios comportant de nombreux fichiers à empaqueter.

Remarque

Spécifiez ce paramètre ou Sources. Dans le fichier manifeste, le paramètre URI est requis et le paramètre Alias est facultatif. SourceManifestURI prend en charge jusqu'à 80 000 règles d'empaquetage.

Avertissement Lorsque vous enregistrez le contenu sur OSS, spécifiez l'adresse OSS du fichier pour ce paramètre.

Voici un exemple de la structure de fichier :

[{"URI":"oss://<bucket>/<object>", "Alias":"/new-dir/new-name"}]

oss://test-bucket/test-object.json

TargetURI

string

Oui

Adresse OSS du fichier de sortie. Le fichier compressé est nommé d'après le nom de fichier dans ce chemin d'accès, par exemple name.zip.

L'adresse OSS doit être au format oss://${Bucket}/${Object}. ${Bucket} est le nom du bucket OSS qui se trouve dans la même région que le projet actuel. ${Object} est le chemin d'accès complet du fichier, y compris l'extension du nom de fichier.

oss://test-bucket/test-target-object.zip

CompressedFormat

string

Non

Format de compression pour l'empaquetage des fichiers.

Remarque

Actuellement, seul le format zip est pris en charge.

zip

UserData

string

Non

Données utilisateur personnalisées. Ces données sont renvoyées dans le message de notification asynchrone, ce qui vous aide à associer la notification à votre système interne. La longueur maximale est de 2 048 octets.

test-data

Notification Notification

Non

Configuration de notification des messages. Pour plus d'informations, consultez le type de données Notification. Pour connaître le format des messages de notification asynchrones, consultez Format des messages de notification asynchrones.

Remarque

Les rappels de l'API IMM ne prennent actuellement pas en charge la spécification d'une adresse de webhook. Utilisez plutôt MNS.

Exemples de règles d'empaquetage pour des scénarios typiques

Les exemples suivants montrent comment configurer des règles d'empaquetage pour des scénarios typiques en fonction de l'exemple de structure de fichiers :

(bucket)
├── test-dir1
│   ├── file1.txt
│   ├── file2.doc
│   ├── file3.png
│   └── my-file.json
└── test-dir2
    ├── AAA
    │   └── file.txt
    ├── AAA
    ├── file6.doc
    ├── file7.doc
    └── file8.doc
Empaqueter un répertoire spécifié

Pour empaqueter tous les fichiers du répertoire test-dir1 dans un répertoire spécifié nommé test-dir, utilisez la règle d'empaquetage suivante :

[
    {
        "URI"   : "oss://bucket/test-dir1/",
        "Alias" : "/test-dir/"
    }
]

La structure du fichier compressé généré est la suivante :

.
└── test-dir
    ├── file1.txt
    ├── file2.doc
    ├── file3.png
    └── my-file.json
Empaqueter des fichiers avec un préfixe spécifié

Pour empaqueter tous les fichiers avec le préfixe test-dir1/file dans un répertoire spécifié nommé test-dir, utilisez la règle d'empaquetage suivante :

[
    {
        "URI"   : "oss://bucket/test-dir1/file",
        "Alias" : "/test-dir/"
    }
]

La structure du fichier compressé généré est la suivante :

.
└── test-dir
    ├── file1.txt
    ├── file2.doc
    └── file3.png

Notez que si vous utilisez le mode préfixe pour l'empaquetage et que le préfixe correspond à la fois à un fichier et à un dossier, le fichier et le dossier sont tous deux empaquetés dans le fichier compressé. Par exemple :

[
    {
        "URI"   : "oss://bucket/test-dir2/AAA",
        "Alias" : "/AAA/"
    }
]

La structure du fichier compressé généré est la suivante :

.
└── AAA
    ├── AAA
    └── file.txt
Empaqueter des fichiers spécifiés

Si vous ne souhaitez pas utiliser le mode préfixe, définissez le paramètre mode pour n'empaqueter que les fichiers spécifiés :

[
    {
        "URI"   : "oss://bucket/test-dir2/AAA",
        "Alias" : "AAA",
        "mode"  : "fullname",
    },
    {
        "URI"   : "oss://bucket/test-dir1/",
        "Alias" : "/test-dir1/",
        "mode"  : "fullname",
    }
]

La structure du fichier compressé généré est la suivante :

.
├── AAA
└── test-dir1

Éléments de réponse

Élément

Type

Description

Exemple

object

Structure de la réponse.

RequestId

string

Identifiant de la requête.

EC564A9A-BA5C-4499-A087-D9B9E76E*****

EventId

string

Identifiant de l'événement.

0ED-1Bz8z71k5TtsUejT4UJ16Es*****

TaskId

string

Identifiant de la tâche.

FileCompression-3579a380-6f7a-4a9d-b9d2-65996*****

Exemples

JSON format

{
  "RequestId": "EC564A9A-BA5C-4499-A087-D9B9E76E*****",
  "EventId": "0ED-1Bz8z71k5TtsUejT4UJ16Es*****",
  "TaskId": "FileCompression-3579a380-6f7a-4a9d-b9d2-65996*****"
}

Codes d'erreur

Consultez Codes d'erreur pour la liste complète.

Notes de version

Consultez Notes de version pour la liste complète.