All Products
Search
Document Center

Drive and Photo Service:Operasi terkait file

Last Updated:Dec 22, 2025

Topik ini menjelaskan metode yang dapat Anda gunakan untuk melakukan operasi pada file dan folder, termasuk penambahan, penghapusan, modifikasi, kueri, penyalinan, dan pemindahan.

Catatan

Opsi parameter dari tipe IPDSRequestConfig dienkapsulasi berdasarkan konfigurasi permintaan axios. Untuk informasi lebih lanjut, lihat AxiosRequestConfig.

Metode listFiles

Gunakan metode ini untuk menanyakan file atau folder dalam direktori tertentu.

const result = await client.listFiles(params, options)

Contoh

const {items=[]} = await client.listFiles({
  drive_id:'1001', 
  parent_file_id:'root'
})

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IListFileReq

Ya

Parameter yang digunakan untuk menanyakan file atau folder.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IListFileReq

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

parent_file_id

string

ID direktori induk.

fields

string

Parameter yang akan dikembalikan. Jika Anda ingin semua parameter dikembalikan, atur nilainya ke *. Jika Anda tidak menentukan parameter ini, hanya parameter dasar yang dikembalikan. Secara default, parameter ini tidak ditentukan.

url_expire_sec

number

Masa berlaku URL.

video_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail video. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

image_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail gambar. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

image_url_process

string

Ekspresi yang digunakan untuk memproses URL gambar. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

limit

number

Jumlah maksimum entri yang akan dikembalikan.

marker

string

Token paginasi.

order_by

string

Parameter berdasarkan mana hasil diurutkan.

order_direction

string

Urutan berdasarkan mana hasil diurutkan. Nilai valid: DESC dan ASC.

starred

boolean

Menentukan apakah file atau folder ditambahkan ke favorit.

category

string

Kategori file atau folder.

status

string

Status file atau folder.

tipe

string

Tipe entri. Nilai valid: file dan folder.

IFileItem

Parameter

Tipe

Diperlukan

Deskripsi

action_list

array

Izin.

category

string

Tipe file. Nilai valid: app, doc, image, video, audio, zip, dan lainnya.

content_hash

string

Pengenal file.

content_hash_name

string

Mode enkripsi file.

content_type

string

Tipe konten.

crc64_hash

string

Nilai hash CRC-64.

created_at

Date

Ya

Waktu saat file dibuat.

creator_id

string

Ya

ID pembuat.

creator_name

string

Ya

Nama pembuat.

creator_type

string

Ya

Tipe pembuat. Nilai valid: group dan user.

domain_id

string

Ya

ID domain.

download_url

string

URL unduhan. Parameter ini dikembalikan hanya jika parameter tipe diatur ke file.

drive_id

string

Ya

ID drive.

description

string

Deskripsi file.

encrypt_mode

string

Ya

Mode enkripsi.

file_extension

string

Ekstensi nama file. Contoh: .txt.

file_id

string

Ya

ID folder.

hidden

boolean

Ya

Menunjukkan apakah file disembunyikan.

last_modifier_id

string

Ya

ID orang yang terakhir memodifikasi file.

last_modifier_name

string

Nama orang yang terakhir memodifikasi file.

last_modifier_type

string

Tipe orang yang memodifikasi file. Nilai valid: group dan user.

labels

string

Tag.

location

string

Lokasi.

mime_extension

string

Ekstensi tipe media.

mime_type

string

Tipe media.

meta

string

Metadata.

name

string

Ya

Nama folder.

parent_file_id

string

Ya

ID direktori induk.

punish_flag

number

Jumlah kesalahan.

revision_id

string

Ya

Versi revisi.

rapid_upload

boolean

Menunjukkan apakah transfer file instan dilakukan.

size

number

Ukuran file atau folder. Unit: byte.

starred

boolean

Ya

Menunjukkan apakah file atau folder ditambahkan ke favorit.

status

string

Ya

Status file atau folder. Nilai valid: available dan uploading.

streams_upload_info

Informasi tentang unggah aliran.

thumbnail

string

Gambar mini. Parameter ini diperlukan hanya jika parameter category diatur ke image atau video.

tipe

string

Ya

Tipe entri. Nilai valid: file dan folder.

trashed

boolean

Menunjukkan apakah file atau folder dipindahkan ke tempat sampah.

updated_at

Date

Ya

Waktu saat file atau folder diperbarui.

user_meta

string

upload_id

string

ID unggah.

url

string

URL file input.

  • Perbedaan antara parameter download_url dan url adalah bahwa download_url mencakup header pesan berikut:

    Content-Disposition: attachment; filename="filename"

    Header ini memastikan bahwa browser langsung mengunduh file. Parameter url tidak memiliki header ini, sehingga browser membuka file secara langsung (misalnya, gambar, video MP4, atau file PDF).

  • Parameter thumbnail hanya tersedia untuk gambar dan video.

Metode searchFiles

Gunakan metode ini untuk mencari file berdasarkan kondisi tertentu.

const result = await client.searchFiles(params, options, isRecycleBin)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

object

Ya

Parameter yang digunakan untuk mencari file. Untuk informasi lebih lanjut, lihat bagian "ISearchFileReq" dari topik ini.

options

IPDSRequestConfig

Parameter permintaan lainnya.

isRecycleBin

boolean

Menentukan apakah akan mencari file di tempat sampah. Jika Anda ingin mencari file di tempat sampah, atur nilainya ke true. Jika tidak, atur nilainya ke false. Nilai default: false.

ISearchFileReq

Parameter

Tipe

Diperlukan

Deskripsi

limit

number

Jumlah maksimum entri yang akan dikembalikan.

query

string

Ya

Kondisi filter yang digunakan untuk mencari file. Untuk informasi lebih lanjut, lihat Kueri file.

drive_id

string

Ya

ID drive.

fields

string

Parameter yang akan dikembalikan. Jika Anda ingin semua parameter dikembalikan, atur nilainya ke *. Jika Anda tidak menentukan parameter ini, hanya parameter dasar yang dikembalikan. Secara default, parameter ini tidak ditentukan.

order_by

string

Parameter berdasarkan mana hasil diurutkan.

marker

string

Token paginasi.

url_expire_sec

number

Masa berlaku URL. Secara default, URL berlaku selama 2 jam.

image_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail video. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

image_url_process

string

Ekspresi yang digunakan untuk memproses thumbnail gambar. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

video_thumbnail_process

string

Ekspresi yang digunakan untuk memproses URL gambar. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

IListRes

Ya

Hasil yang dikembalikan.

IListRes

Parameter

Tipe

Diperlukan

Deskripsi

items

array

Ya

Daftar file. Untuk informasi lebih lanjut tentang parameter spesifik, lihat bagian "IFileItem" dari topik ini.

next_marker

string

Token paginasi.

Metode getFile

Gunakan metode ini untuk menanyakan informasi tentang file berdasarkan ID file.

const result = await client.getFile(params, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

object

Ya

Parameter yang digunakan untuk menanyakan informasi file. Untuk informasi lebih lanjut, lihat bagian "IGetFileReq" dari topik ini.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IGetFileReq

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

ID file.

fields

string

Parameter yang akan dikembalikan. Jika Anda ingin semua parameter dikembalikan, atur nilainya ke *. Jika Anda tidak menentukan parameter ini, hanya parameter dasar yang dikembalikan. Secara default, parameter ini tidak ditentukan.

url_expire_sec

number

Masa berlaku setiap URL yang ditandatangani yang dikembalikan.

video_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail video. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

image_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail gambar. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

image_url_process

string

Ekspresi yang digunakan untuk memproses URL gambar. Untuk informasi lebih lanjut, lihat Pemrosesan Gambar.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat bagian "IFileItem" dari topik ini.

Metode getFileDownloadUrl

Gunakan metode ini untuk mendapatkan URL unduhan file. Setelah itu, Anda dapat membuka URL unduhan di browser untuk mengunduh file secara langsung.

const result = await client.getFileDownloadUrl(params, options)

Contoh

const info = await client.getFileDownloadUrl({
  drive_id: '1',
  file_id: 'xxxxx',
})

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

object

Ya

Parameter yang digunakan untuk menanyakan URL unduhan. Untuk informasi lebih lanjut, lihat bagian "IGetFileDownloadUrlReq" dari topik ini.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IGetFileDownloadUrlReq

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

ID file.

fields

string

Parameter yang akan dikembalikan. Jika Anda ingin semua parameter dikembalikan, atur nilainya ke *. Jika Anda tidak menentukan parameter ini, hanya parameter dasar yang dikembalikan. Secara default, parameter ini tidak ditentukan.

file_name

string

Nama file yang akan diunduh. Saat file diunduh, header respons Content-Disposition: attachment; filename="filename" dikonfigurasi di server. Nama tersebut dapat memiliki panjang hingga 1.024 karakter.

expire_sec

number

Masa berlaku URL unduhan. Unit: detik. Nilai maksimum: 115200. Nilai default: 900.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

hasil

objek

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat bagian "IGetFileDownloadUrlRes" dari topik ini.

IGetFileDownloadUrlRes

Parameter

Tipe

Diperlukan

Deskripsi

expiration

string

Ya

Masa berlaku URL unduhan.

method

string

Ya

Metode HTTP yang berlaku. Dalam kebanyakan kasus, metode GET digunakan.

url

string

Ya

URL unduhan file.

size

number

Ukuran file atau folder. Unit: byte.

Metode saveFileContent

Gunakan metode ini untuk menyimpan konten file atau membuat file baru.

Jika ID yang Anda tentukan untuk file baru sama dengan ID file yang sudah ada, file tersebut akan ditimpa. Jika Anda tidak menentukan ID, sistem akan menganggapnya sebagai file baru dan menerapkan kebijakan berdasarkan parameter check_name_mode. Secara default, parameter check_name_mode diatur ke refuse.

const result = await client.saveFileContent(params, content, config)

Contoh

Kode sampel berikut menunjukkan cara membuat file baru:

await client.saveFileContent({
  drive_id: '1',
  parent_file_id: 'root',
  name: 'unnamed.txt',
  content_type: 'text/plain; charset=utf-8',
}, '')

Kode sampel berikut menunjukkan cara memodifikasi konten file yang sudah ada:

await client.saveFileContent(fileItem, 'modified content')

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IGetFileReq

Ya

Informasi tentang file. Untuk informasi lebih lanjut, lihat bagian "IGetFileReq" dari topik ini.

content

string

Konten file. Secara default, parameter ini dibiarkan kosong.

config

ISaveFileConfig

Parameter permintaan lainnya.

ISaveFileConfig

Parameter

Tipe

Diperlukan

Deskripsi

check_name_mode

boolean

Kebijakan yang digunakan saat file baru memiliki nama yang sama dengan file yang sudah ada. Nilai valid:

auto_rename: menambahkan nomor acak di akhir nama file.

refuse: melempar pengecualian dengan kode AlreadyExists.

ignore: mengizinkan file baru memiliki nama yang sama dengan file yang sudah ada.

Nilai default: refuse.

Jika parameter params berisi parameter file_id, parameter file_id ini menjadi tidak valid.

ignore_rapid

boolean

Menentukan apakah transfer file instan dipaksa dinonaktifkan. Parameter ini terutama digunakan untuk pengujian. Nilai default: false.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat bagian "IFileItem" dari topik ini.

Metode getFileContent

Gunakan metode ini untuk menanyakan konten file. Metode ini biasanya digunakan untuk membaca file teks.

Catatan: Hindari menggunakan metode ini untuk file besar karena dapat mengonsumsi banyak memori.

const result = await client.getFileContent(params, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IGetFileReq

Ya

Parameter permintaan.

options

IPDSRequestConfig

Parameter permintaan lainnya.

  • Parameter content dalam respons tergantung pada parameter options.responseType. Secara default, responseType diatur ke arraybuffer. Di lingkungan Node.js, nilai Buffer dikembalikan untuk content, sedangkan di lingkungan browser, nilai ArrayBuffer dikembalikan.

  • Jika Anda yakin bahwa file tersebut adalah file teks, atur options.responseType ke text agar nilai yang dikembalikan untuk content adalah string.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Hasil yang dikembalikan.

result

Parameter

Jenis

Diperlukan

Deskripsi

header

objek

Ya

Pesan header.

konten

Buffer | string | ...

Ya

Isi dari file, yang dapat dibiarkan kosong. Nilai yang berbeda dikembalikan berdasarkan nilai parameter responseType. Untuk informasi lebih lanjut, lihat bagian "responseType" di "axios - npm".

ukuran

angka

Ya

Ukuran file. Satuan: byte.

tipe

string

Ya

ID file.

updated_at

string

Ya

Waktu ketika file diperbarui.

status

string

Ya

Keadaan berkas.

Metode renameFile

Gunakan metode ini untuk mengubah nama file atau folder.

const result = await client.renameFile(fileItem, newName, check_name_mode)

Contoh

Kode sampel berikut menunjukkan cara mengubah nama file:

await client.renameFile({
  drive_id: "1",
  file_id: 'xxxxxx',
}, 'new name.txt')

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

fileItem

IFileItem

Ya

Informasi tentang file yang akan diubah namanya. Untuk informasi lebih lanjut, lihat bagian "IFileItem" dari topik ini.

newName

string

Ya

Nama baru file.

check_name_mode

string

Kebijakan yang digunakan saat file baru memiliki nama yang sama dengan file yang sudah ada. Nilai valid:

auto_rename: menambahkan nomor acak di akhir nama file.

refuse: melempar pengecualian dengan kode AlreadyExists.

ignore: mengizinkan file baru memiliki nama yang sama dengan file yang sudah ada.

Nilai default: refuse.

Jika parameter fileItem berisi parameter file_id, parameter file_id ini menjadi tidak valid.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat bagian "IFileItem" dari topik ini.

Metode updateFile

Gunakan metode ini untuk memodifikasi informasi tentang file atau folder.

const result = await client.updateFile(params, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

object

Ya

Informasi tentang file yang akan diperbarui. Untuk informasi tentang parameter spesifik, lihat bagian "IUpdateFileReq" dari topik ini.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IUpdateFileReq

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

Ya

ID file.

check_name_mode

string

Kebijakan yang digunakan ketika file baru memiliki nama yang sama dengan file yang sudah ada. Nilai yang valid:

auto_rename: menambahkan nomor acak di akhir nama file.

refuse: melempar pengecualian dengan code bernilai AlreadyExists.

ignore: mengizinkan file baru memiliki nama yang sama dengan file yang sudah ada.

parent_file_id

string

ID direktori induk.

custom_index_key

string

Kunci kustom.

deskripsi

string

Deskripsi dari file tersebut.

encrypt_mode

string

Mode enkripsi.

tersembunyi

boolean

Menentukan apakah akan menyembunyikan file atau folder.

label

larik

Tag-tag tersebut.

meta

string

nama

string

Nama file atau folder.

berbintang

boolean

Menentukan apakah akan menambahkan file atau folder ke favorit.

user_meta

string

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Informasi yang diperbarui. Untuk informasi lebih lanjut tentang parameter tertentu, lihat bagian "IFileItem" dari topik ini.

Metode getFileByPath

Gunakan metode ini untuk menanyakan informasi tentang file atau folder berdasarkan jalur file.

Sebagai contoh, Anda dapat menanyakan file atau folder berdasarkan jalur /a/b/c.

const result = await client.getFileByPath(params, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IGetFileByPathReq

Ya

Parameter permintaan.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IGetFileByPathReq

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

Ya

ID drive.

file_path

string

Ya

Jalur folder. Contoh: /a/b/c.

fields

string

Parameter yang akan dikembalikan. Jika Anda ingin semua parameter dikembalikan, atur nilainya ke *.

url_expire_sec

number

Masa berlaku URL. Satuan: detik.

video_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail video. Untuk informasi lebih lanjut, lihat Pengolahan Gambar.

image_thumbnail_process

string

Ekspresi yang digunakan untuk memproses thumbnail gambar. Untuk informasi lebih lanjut, lihat Pengolahan Gambar.

image_url_process

string

Ekspresi yang digunakan untuk memproses URL gambar. Untuk informasi lebih lanjut, lihat Pengolahan Gambar.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat bagian "IFileItem" dari topik ini.

Metode getBreadcrumbFolderList

Gunakan metode ini untuk menanyakan informasi tentang direktori breadcrumb multi-level. Rekursi ke atas dilakukan berdasarkan direktori saat ini untuk menanyakan semua direktori terkait. Selama proses ini, metode getFile dipanggil.

Array yang dikembalikan tidak mencakup direktori root.

Pengecualian:

1. Jika error 403 dikembalikan, Anda dilarang menanyakan direktori, dan kueri berakhir. Dalam array yang dikembalikan, parameter is_forbidden diatur menjadi true untuk direktori tersebut.

2. Jika terjadi pengecualian lain, maka pengecualian tersebut akan langsung dilemparkan.

const result = await client.getBreadcrumbFolderList(params, options)

Contoh

// Sebagai contoh, path /a/b/c/ ada.
// ID file dari direktori c adalah 620cb4363a20321aa66a495ca063ac2679a8f726.

const arr = await client.getBreadcrumbFoldderList({
  drive_id,
  file_id,
})
// Mengembalikan informasi tentang direktori breadcrumb multi-level: [{file_id: 'ID Direktori a', name:'a'},{file_id: 'ID Direktori b', name:'b'}]

.

Parameter permintaan

Parameter

Jenis

Diperlukan

Deskripsi

params

IGetBreadcrumbReq

Ya

Parameter yang digunakan untuk menanyakan informasi tentang direktori breadcrumb multi-level.

opsi

IPDSRequestConfig

Parameter permintaan lainnya.

IGetBreadcrumbReq

Parameter

Jenis

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

Ya

ID dari direktori saat ini.

end_parent_id

string

ID direktori induk di mana Anda ingin mengakhiri kueri. Nilai default: root.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

hasil

IParentFolderNameId[]

Ya

Hasil yang dikembalikan.

IParentFolderNameId

Parameter

Tipe

Diperlukan

Deskripsi

file_id

string

Ya

ID Direktori.

name

string

Ya

Nama direktori.

is_forbidden

boolean

Menunjukkan apakah Anda dilarang menanyakan direktori.

Metode getBreadcrumbFolders

Peringatan

Kami merekomendasikan Anda mengganti metode ini dengan metode getBreadcrumbFolderList.

Gunakan metode ini untuk menanyakan informasi tentang direktori breadcrumb multi-level. Rekursi ke atas dilakukan berdasarkan direktori saat ini untuk menanyakan semua direktori terkait. Selama proses ini, metode getFile dipanggil.

Array yang dikembalikan tidak mencakup direktori root.

Pengecualian

1. Jika kesalahan 403 dikembalikan, Anda tidak diizinkan untuk menanyakan direktori, dan kueri akan berakhir. Dalam array yang dikembalikan, parameter is_forbidden diatur ke true untuk direktori tersebut.

2. Jika terjadi pengecualian lain, pengecualian tersebut dilemparkan langsung.

const result = await client.getBreadcrumbFolders(drive_id,file_id, end_parent_id)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

Ya

ID drive.

file_id

string

Ya

ID direktori.

end_parent_id

string

ID direktori induk di mana Anda ingin mengakhiri kueri. Nilai default: root.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

IParentFolderNameId[]

Ya

Hasil yang dikembalikan.

IParentFolderNameId

Parameter

Tipe

Diperlukan

Deskripsi

file_id

string

Ya

ID direktori.

name

string

Ya

Nama direktori.

is_forbidden

boolean

Menunjukkan apakah Anda dilarang untuk menanyakan direktori tersebut.

Metode createFolder

Gunakan metode ini untuk membuat folder.

const result = await client.createFolder(params, options)

Contoh

await client.createFolder({
  name: 'folder baru',  
  drive_id: '1',
  parent_file_id: 'root',
  // check_name_mode:'auto_rename'
})

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

ICreateFolderReq

Ya

Parameter yang digunakan untuk membuat folder. Untuk informasi lebih lanjut, lihat bagian ICreateFolderReq dari topik ini.

options

IPDSRequestConfig

Tidak

Parameter permintaan lainnya.

ICreateFolderReq

Parameter

Tipe

Diperlukan

Deskripsi

check_name_mode

string

Kebijakan yang digunakan ketika file baru memiliki nama yang sama dengan file yang sudah ada. Nilai yang valid:

auto_rename: menambahkan angka acak di akhir nama file.

refuse: melempar pengecualian dengan code adalah AlreadyExists.

ignore: mengizinkan file baru memiliki nama yang sama dengan file yang sudah ada.

Nilai default: refuse.

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Parameter ini valid untuk sharelink. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

name

string

Ya

Nama direktori.

parent_file_id

string

Ya

ID direktori induk. Jika direktori adalah direktori root, atur nilainya menjadi root.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

ICreateFolderRes

Ya

Hasil yang dikembalikan.

ICreateFolderRes

Parameter

Tipe

Diperlukan

Deskripsi

domain_id

string

Ya

ID domain.

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

encrypt_mode

string

Mode enkripsi.

file_id

string

Ya

ID file.

file_name

string

Ya

Nama file.

parent_file_id

string

Ya.

ID direktori induk. Jika direktori adalah direktori root, atur nilainya menjadi root.

type

string

Ya

Tipe entri. Nilai yang valid: file dan folder.

Contoh

{
  "parent_file_id": "root",
  "type": "folder",
  "file_id": "61ba1892abbe9f56bb7342c4beee82156e68dd67",
  "domain_id": "daily123",
  "drive_id": "1",
  "file_name": "folder baru",
  "encrypt_mode": "none"
}

Metode createFolders

Gunakan metode ini untuk membuat folder. Jika folder baru memiliki nama yang sama dengan folder yang sudah ada, kebijakan yang ditentukan oleh parameter check_name_mode digunakan.

const result = await client.createFolders(folderNames, parentKey, config)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

folderNames

string[]

Ya

Nama folder. Sebagai contoh, jika Anda ingin membuat direktori dengan path a/b/c, atur nilainya ke ['a', 'b', 'c'].

parentKey

IParentFileKey

Ya

Parameter yang digunakan untuk membuat folder multi-level.

config

ICreateFoldersConfig

Parameter permintaan opsional.

IParentFileKey

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

parent_file_id

string

Ya

ID direktori induk. Jika direktori adalah direktori root, atur nilainya ke root.

ICreateFoldersConfig

Parameter

Tipe

Diperlukan

Deskripsi

check_name_mode

string

Kebijakan yang digunakan saat file baru memiliki nama yang sama dengan file yang sudah ada. Nilai valid:

auto_rename: menambahkan nomor acak di akhir nama file.

refuse: memanggil balik parameter onFolderRepeat.

ignore: mengizinkan file baru memiliki nama yang sama dengan file yang sudah ada.

overwrite: menimpa file yang sudah ada dengan file yang memiliki nama yang sama dengan file tersebut.

skip: melewati file yang memiliki nama yang sama.

Nilai default: refuse.

create_folder_cache

Map<string, any>={}

Metode map, yang menyimpan cache informasi direktori.

onFolderRepeat

()=>boolean

Callback yang dipanggil jika path yang Anda tentukan sudah ada. Jika nilai true dikembalikan, pembuatan dilanjutkan. Jika nilai false dikembalikan, pengecualian dengan kode AlreadyExists dilempar.

onFolderCreated

(fileItem)=>void

Callback yang dipanggil jika pembuatan berhasil.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

string

Ya

Path yang dibuat.

Metode deleteFile

Gunakan metode ini untuk menghapus file atau folder tertentu.

await client.deleteFile(params, permanently, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IFileKey

Ya

Informasi tentang file atau folder yang akan dihapus.

permanently

boolean

Menentukan apakah akan menghapus file atau folder secara permanen. Nilai false menunjukkan bahwa file atau folder dihapus sementara dan dapat dipulihkan. Nilai true menunjukkan bahwa file atau folder dihapus secara permanen. Nilai default: false.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IFileKey

Parameter

Tipe

Diperlukan

Deskripsi

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

ID file atau folder yang akan dihapus.

Parameter respons

Jika satu file dihapus, kode status HTTP 204 dapat langsung dikembalikan dengan badan respons kosong.

Jika folder dihapus, struktur JSON yang terdiri dari kode status HTTP 202 dan parameter respons mungkin dikembalikan. Tabel berikut menjelaskan parameter respons.

Parameter

Tipe

Diperlukan

Deskripsi

async_task_id

string

ID tugas asinkron.

domain_id

string

ID drive.

file_id

string

ID file atau folder yang dihapus.

Metode batchDeleteFiles

Gunakan metode ini untuk menghapus beberapa file atau folder sekaligus.

const result = await client.batchDeleteFiles(params, permanently, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IFileKey[]

Ya

Informasi tentang file atau folder yang akan dihapus. Anda dapat menghapus beberapa file atau folder sekaligus. Untuk informasi lebih lanjut tentang parameter spesifik, lihat bagian "successArr" dan "errorArr" dari topik ini. Anda hanya perlu memberikan ID file atau ID direktori. Metode ini secara otomatis melakukan rekursi untuk menghapus semua file yang berada di dalam direktori.

permanently

boolean

Ya

Menentukan apakah akan menghapus file atau folder secara permanen. Nilai false menunjukkan bahwa file atau folder dihapus sementara dan dapat dipulihkan. Nilai true menunjukkan bahwa file atau folder dihapus secara permanen. Nilai default: false.

options

IPDSRequestConfig

Tidak

Parameter permintaan lainnya.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

objek

Ya

Hasil yang dikembalikan. Jika file atau folder dihapus, successArr akan dikembalikan. Jika file atau folder gagal dihapus, errorArr akan dikembalikan.

successArr

Jika file dihapus, nilai parameter successArr adalah undefined. Jika folder dihapus, hasil yang dikembalikan mencakup parameter berikut.

Parameter

Tipe

Diperlukan

Deskripsi

async_task_id

string

Ya

ID tugas asinkron.

domain_id

string

Ya

ID domain.

drive_id

string

Ya

ID drive.

share_id

string

ID berbagi.

file_id

string

Ya

ID file atau folder yang dihapus.

errorArr

Jika file atau folder gagal dihapus, informasi file yang Anda tentukan dikembalikan.

Parameter

Tipe

Diperlukan

Deskripsi

share_id

string

ID berbagi.

drive_id

string

Ya

ID drive.

file_id

string

Ya

ID file atau folder yang gagal dihapus.

Metode copyFiles

Gunakan metode ini untuk menyalin file atau folder.

const result = await client.copyFiles(params, config, options)

Contoh

Kode sampel berikut menunjukkan cara menyalin beberapa file:

const {items=[]} = await client.listFiles(req)
                                          
// Masukkan array fileItem.              
await client.copyFiles(items, {to_parent_file_id, to_drive_id})

Saat menyalin satu file, Anda dapat mengubah nama file dengan menjalankan kode sampel berikut:

await client.copyFiles(item, { new_name: 'nama file baru', ... })

Anda dapat menjalankan kode sampel berikut untuk membatalkan operasi salin selama proses penyalinan:

let stopFlag=false

// Metode yang digunakan untuk membatalkan operasi salin.
function cancel(){
  stopFlag=true
}

await client.copyFiles(items, {
  getStopFlag()=>{
    return stopFlag
  } 
})

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IFileItemKey[]

Ya

File yang akan disalin. Untuk informasi lebih lanjut tentang parameter spesifik, lihat bagian "IFileKey" dari topik ini.

config

ICopyFilesConfig

Ya

Konfigurasi terkait penyalinan file.

options

IPDSRequestConfig

Parameter permintaan lainnya.

IFileItemKey

Parameter

Tipe

Diperlukan

Deskripsi

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

Ya

ID file atau folder.

parent_file_id

string

Ya

ID direktori induk.

ICopyFilesConfig

Parameter

Tipe

Diperlukan

Deskripsi

to_parent_file_id

string

Ya

ID folder ke mana file disalin.

to_drive_id

string

ID drive ke mana file disalin. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

to_share_id

string

ID berbagi ke mana file disalin. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

new_name

string

Nama baru file. Anda dapat menentukan parameter ini hanya saat Anda menyalin satu file.

onProgress

(count,total)=>{}

Parameter callback kemajuan salin, yang berisi dua parameter: count dan total.

getStopFlag

()=>boolean

Menentukan apakah akan menghentikan proses salin. Nilai true menentukan bahwa proses salin akan dihentikan. Nilai false menentukan bahwa proses salin akan dilanjutkan.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

ICopyFileRes[]

Ya

Hasil yang dikembalikan.

ICopyFileRes

Parameter

Tipe

Diperlukan

Deskripsi

async_task_id

string

ID tugas asinkron. Parameter ini tersedia hanya jika Anda menyalin folder.

domain_id

string

ID domain.

drive_id

string

ID drive. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

share_id

string

ID berbagi. Anda harus mengonfigurasi parameter drive_id atau parameter share_id.

file_id

string

Ya

ID file.

Metode moveFiles

Gunakan metode ini untuk memindahkan file atau folder.

const result = await client.moveFiles(params, config, options)

Contoh

Kode sampel berikut menunjukkan cara memindahkan beberapa file:

const {items=[]} = await client.moveFiles(...)
                                          
// Masukkan array fileItem.                                    
await client.moveFiles(items, {to_parent_file_id, to_drive_id })

Saat memindahkan satu file, Anda dapat mengubah nama file dengan menjalankan kode sampel berikut:

await client.moveFiles(item, { new_name: 'nama file baru', ... })

Anda dapat menjalankan kode sampel berikut untuk membatalkan operasi pemindahan selama proses pemindahan:

let stopFlag=false

// Metode yang digunakan untuk membatalkan operasi pemindahan.
function cancel(){
  stopFlag=true
}

await client.moveFiles(items, {
  getStopFlag()=>{
    return stopFlag
  } 
})

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

params

IFileItemKey[]

Ya

File yang akan dipindahkan. Untuk informasi lebih lanjut tentang parameter spesifik, lihat bagian "IFileKey" dari topik ini.

config

ICopyFilesConfig

Ya

Konfigurasi terkait pemindahan file. Untuk informasi lebih lanjut, lihat bagian "copyFiles method" dari topik ini.

options

IPDSRequestConfig

Parameter permintaan lainnya.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

ICopyFileRes[]

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat parameter respons metode copyFiles.

Metode getAsyncTask

Gunakan metode ini untuk menanyakan kemajuan tugas.

const result = await client.getAsyncTask(async_task_id, options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

async_task_id

string

Ya

ID tugas.

options

IPDSRequestConfig

Parameter permintaan lainnya.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

object

Ya

Hasil yang dikembalikan. Untuk informasi lebih lanjut, lihat bagian "IAsyncTaskRes" dari topik ini.

IAsyncTaskRes

Parameter

Tipe

Diperlukan

Deskripsi

async_task_id

string

Ya

ID tugas asinkron.

state

string

Ya

Status tugas. Nilai valid: Failed, Success, PartialSucceed, dan Running.

error_message

string

Pesan.

error_code

number

Pesan yang dikembalikan saat tugas dalam status Failed.

url

string

URL unduhan yang dikembalikan oleh operasi archiveFile setelah file diarsipkan.

Metode pollingAsyncTask

Gunakan metode ini untuk memantau kemajuan tugas secara berkala hingga hasil yang diinginkan dikembalikan.

const result = await client.getAsyncTask(async_task_id, ttl_ms options)

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

async_task_id

string

Ya

ID tugas.

ttl_ms

number

Interval pemantauan. Unit: milidetik. Nilai default: 5000.

options

IPDSRequestConfig

Parameter permintaan lainnya.

Parameter respons

Parameter

Tipe

Diperlukan

Deskripsi

result

IAsyncTaskRes

Ya

Hasil yang dikembalikan.