All Products
Search
Document Center

Intelligent Media Management:CreateFileCompressionTask

Last Updated:Jan 27, 2026

Package Download API

Deskripsi operasi

Catatan

API ini sedang dalam pratinjau publik. Jika Anda memiliki pertanyaan, bergabunglah dengan grup DingTalk kami untuk memberikan masukan. Untuk nomor grup, lihat Hubungi kami.

Catatan

API ini saat ini mendukung pengemasan tetapi belum mendukung kompresi. Fitur kompresi akan ditambahkan di kemudian hari.

  • Sebelum menggunakan API ini, pastikan Anda memahami metode penagihan dan harga Intelligent Media Management (IMM).

    Penting Waktu penyelesaian tugas asinkron tidak dijamin.

  • Batas jumlah file: Anda dapat mengemas hingga 80.000 file.

  • Batas ukuran file: Ukuran total semua file sebelum dikemas tidak boleh melebihi 200 GB.

  • Fitur ini mendukung file dengan kelas penyimpanan Standard di OSS. Untuk mengemas file dengan kelas penyimpanan lain, terlebih dahulu ubah kelas penyimpanannya.

  • Ini adalah API asinkron. Setelah tugas dimulai, informasinya disimpan selama 7 hari. Setelah 7 hari, informasi tersebut tidak dapat lagi diambil. Untuk melihat informasi tugas, panggil operasi GetTask atau ListTasks dengan TaskId yang dikembalikan. Anda juga dapat mengatur parameter Notification untuk menerima informasi tugas melalui pesan notifikasi asinkron.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

Action

Access level

Resource type

Condition key

Dependent action

imm:CreateFileCompressionTask

create

*Project

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

None None

Parameter permintaan

Parameter

Type

Required

Description

Example

ProjectName

string

Yes

Nama proyek. Untuk informasi selengkapnya, lihat Buat proyek.

test-project

Sources

array<object>

No

Daftar file yang akan dikemas beserta aturan pengemasannya.

Catatan

Tentukan salah satu dari parameter ini atau `SourceManifestURI`. Parameter `Sources` mendukung maksimal 100 aturan pengemasan.

Peringatan Jika Anda memiliki lebih dari 100 aturan pengemasan, gunakan parameter `SourceManifestURI`.

object

No

Alamat OSS file yang akan dikemas beserta aturan pengemasannya.

URI

string

No

Alamat OSS direktori atau file yang akan dikemas.

Alamat OSS harus dalam format `oss://${Bucket}/${Object}`. `${Bucket}` adalah nama bucket OSS yang berada di wilayah yang sama dengan proyek saat ini. `${Object}` dijelaskan sebagai berikut:

  • Untuk mengemas direktori, `${Object}` adalah nama direktori tersebut.

  • Untuk mengemas file, `${Object}` adalah path lengkap file tersebut, termasuk ekstensi nama filenya.

oss://test-bucket/test-object

Alias

string

No

Menentukan path atau nama baru untuk file sumber di dalam file terkompresi output.

  • Jika Anda tidak menentukan parameter ini, struktur direktori sumber dipertahankan. Misalnya, jika file sumber berada di oss://test-bucket/test-dir/test-object.doc, path file tersebut di dalam file terkompresi adalah /test-dir/test-object.doc.

  • Mengganti nama file. Misalnya, jika file sumber berada di oss://test-bucket/test-object.jpg dan Anda mengatur parameter ini menjadi /test-rename-object.jpg, maka file di dalam file terkompresi diberi nama test-rename-object.jpg.

  • Menentukan path baru untuk file sumber di dalam file terkompresi. Misalnya, jika direktori sumber adalah oss://test-bucket/test-dir/ dan Anda mengatur parameter ini menjadi /new-dir/, semua file di direktori sumber dikompresi ke path /new-dir/.

  • Atur nilainya menjadi / untuk menghapus struktur direktori sumber. Semua file ditempatkan langsung di direktori root file terkompresi, dan struktur direktori asli tidak dipertahankan.

  • Tentukan path sekaligus nama file. File tersebut diganti namanya dan dipindahkan ke path yang ditentukan. Misalnya, jika Anda mengatur parameter ini menjadi /new-dir/alias.doc, file tersebut diganti nama menjadi alias.doc dan ditempatkan di path /new-dir/ pada file terkompresi.

Catatan
  • Hindari pembuatan file dengan nama duplikat selama proses penggantian nama. Jika terdapat nama duplikat, Anda mungkin tidak dapat mengekstrak file tersebut dari paket terkompresi. Hal ini tergantung pada program dekompresi yang Anda gunakan.

  • Persyaratan format: Nilai harus diawali dengan garis miring (`/`), seperti /new-dir/alias.doc.

/new-dir/

Mode

string

No

Mode pencocokan pola untuk aturan pengemasan. Nilai yang valid meliputi prefix (pencocokan awalan) dan fullname (pencocokan eksak). Nilai default-nya adalah prefix.

  • prefix: Dalam mode ini, semua file yang sesuai dengan awalan akan dikemas.

  • fullname: Dalam mode ini, hanya file yang persis sesuai dengan aturan yang dikemas.

Valid values:

  • prefix :

    prefix

  • fullname :

    fullname

fullname

CredentialConfig CredentialConfig

No

Jika Anda tidak memiliki persyaratan khusus, biarkan parameter ini kosong.

Konfigurasi otorisasi berantai. Parameter ini bersifat opsional. Untuk informasi selengkapnya, lihat Gunakan otorisasi berantai untuk mengakses sumber daya entitas lain.

SourceManifestURI

string

No

Alamat tempat file manifes disimpan. File manifes menyimpan struktur `Sources` dalam format JSON di OSS. Ini cocok untuk skenario dengan banyak file yang perlu dikemas.

Catatan

Tentukan salah satu dari parameter ini atau Sources. Di dalam file manifes, parameter URI wajib diisi dan parameter Alias bersifat opsional. `SourceManifestURI` mendukung hingga 80.000 aturan pengemasan.

Peringatan Saat menyimpan konten ke OSS, tentukan alamat OSS file tersebut untuk parameter ini.

Berikut contoh struktur file tersebut:

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

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

TargetURI

string

Yes

Alamat OSS file output. File terkompresi diberi nama sesuai dengan nama file di path ini, misalnya name.zip.

Alamat OSS harus dalam format `oss://${Bucket}/${Object}`. `${Bucket}` adalah nama bucket OSS yang berada di wilayah yang sama dengan proyek saat ini. `${Object}` adalah path lengkap file tersebut, termasuk ekstensi nama filenya.

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

CompressedFormat

string

No

Format kompresi untuk pengemasan file.

Catatan

Saat ini, hanya format zip yang didukung.

zip

UserData

string

No

Data pengguna kustom. Data ini dikembalikan dalam pesan notifikasi asinkron, yang membantu Anda mengaitkan notifikasi tersebut dengan sistem internal Anda. Panjang maksimumnya adalah 2.048 byte.

test-data

Notification Notification

No

Konfigurasi notifikasi pesan. Untuk informasi selengkapnya, lihat tipe data Notification. Mengenai format pesan notifikasi asinkron, lihat Format pesan notifikasi asinkron.

Catatan

Callback API IMM saat ini tidak mendukung penentuan alamat webhook. Gunakan MNS sebagai gantinya.

Contoh aturan pengemasan untuk skenario umum

Contoh berikut menunjukkan cara mengonfigurasi aturan pengemasan untuk skenario umum berdasarkan struktur file contoh:

(bucket)
├── test-dir1
│   ├── file1.txt
│   ├── file2.doc
│   ├── file3.png
│   └── my-file.json
└── test-dir2
    ├── AAA
    │   └── file.txt
    ├── AAA
    ├── file6.doc
    ├── file7.doc
    └── file8.doc
Mengemas direktori tertentu

Untuk mengemas semua file di direktori test-dir1 ke direktori bernama test-dir, gunakan aturan pengemasan berikut:

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

Struktur file terkompresi yang dihasilkan adalah sebagai berikut:

.
└── test-dir
    ├── file1.txt
    ├── file2.doc
    ├── file3.png
    └── my-file.json
Mengemas file dengan awalan tertentu

Untuk mengemas semua file dengan awalan test-dir1/file ke direktori bernama test-dir, gunakan aturan pengemasan berikut:

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

Struktur file terkompresi yang dihasilkan adalah sebagai berikut:

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

Perhatikan bahwa jika Anda menggunakan mode awalan untuk pengemasan dan awalan tersebut cocok dengan file maupun folder, keduanya akan dikemas ke dalam file terkompresi. Contohnya:

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

Struktur file terkompresi yang dihasilkan adalah sebagai berikut:

.
└── AAA
    ├── AAA
    └── file.txt
Mengemas file tertentu

Jika Anda tidak ingin menggunakan mode awalan, atur parameter mode untuk mengemas hanya file tertentu:

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

Struktur file terkompresi yang dihasilkan adalah sebagai berikut:

.
├── AAA
└── test-dir1

Elemen respons

Element

Type

Description

Example

object

Struktur respons.

RequestId

string

ID permintaan.

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

EventId

string

ID event.

0ED-1Bz8z71k5TtsUejT4UJ16Es*****

TaskId

string

ID tugas.

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

Contoh

Respons sukses

JSONformat

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

Kode kesalahan

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.