Langkau ke kandungan
Wbiztool

API media

API Senarai Fail Media

Dapatkan fail dalam pustaka media ruang kerja anda beserta URL muat turunnya, yang terbaharu dahulu. Tapis mengikut jenis atau cari mengikut nama untuk mencari fail yang anda muat naik sebelum ini dan guna semula URL-nya dalam mesej.

GEThttps://wbiztool.com/api/v1/media/list/

Body: Rentetan pertanyaan, atau badan JSON dengan POST

Senarai ini termasuk fail yang dimuat naik dengan API Muat naik media dan di halaman Media directory (Direktori media). Fail yang dipadam tidak disertakan.

Contoh ringkas#

curl -G https://wbiztool.com/api/v1/media/list/ \
  --data-urlencode client_id=12345 \
  --data-urlencode api_key=YOUR_API_KEY \
  --data-urlencode file_type=image \
  --data-urlencode page=1 \
  --data-urlencode limit=20

Gantikan 12345 dan YOUR_API_KEY dengan nilai anda sendiri. Lihat Pengesahan identiti untuk mengetahui di mana nilai ini boleh didapati.

Parameter permintaan#

Hantar parameter dalam rentetan pertanyaan permintaan GET, atau sebagai badan JSON dalam permintaan POST dengan Content-Type: application/json. Jangan campurkan kedua-duanya: jika client_id berada dalam rentetan pertanyaan, badan JSON diabaikan. POST yang dikodkan sebagai borang juga berfungsi untuk client_id, api_key, file_type dan search, tetapi page dan limit diabaikan dalam medan borang; hantar kedua-duanya dalam rentetan pertanyaan atau JSON.

Pengesahan identiti

client_idintegerwajib

API Client ID anda dari Settings → API keys (Tetapan → Kunci API).

api_keystringwajib

Kunci API anda dari halaman yang sama.

Penapis dan penomboran halaman

pageintegerpilihan

Nombor halaman, bermula dari 1 (lalai). Nilai di bawah 1 dianggap sebagai 1.

limitintegerpilihan

Bilangan fail setiap halaman, dari 1 hingga 100. Lalai 20. Nilai melebihi 100 dianggap sebagai 100, dan nilai di bawah 1 sebagai 20.

file_typestringpilihan

image untuk imej sahaja, atau file untuk selainnya. Sebarang nilai lain diabaikan.

searchstringpilihan

Pulangkan hanya fail yang nama asal atau nama simpanannya mengandungi teks ini. Tidak sensitif huruf besar/kecil.

POST dengan badan JSONcURL
curl -X POST https://wbiztool.com/api/v1/media/list/ \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": 12345,
    "api_key": "YOUR_API_KEY",
    "search": "invoice",
    "page": 1,
    "limit": 50
  }'

Respons#

{
  "status": 1,
  "message": "Media files retrieved successfully",
  "data": {
    "total_count": 1,
    "page": 1,
    "limit": 20,
    "total_pages": 1,
    "has_next": false,
    "has_previous": false,
    "media_files": [
      {
        "id": 5123,
        "file_name": "media_12345_17895806123456.jpg",
        "original_file_name": "diwali-sale.jpg",
        "file_url": "https://wbiztool-static.s3.ap-southeast-1.amazonaws.com/media/org_12345/media_12345_17895806123456.jpg",
        "file_type": "image",
        "file_size": 524288,
        "file_size_display": "512.0 KB",
        "mime_type": "image/jpeg",
        "is_image": true,
        "file_extension": "jpg",
        "created_at": "2026-09-16T10:23:52.106447+00:00",
        "uploaded_by": "[email protected]"
      }
    ]
  }
}
MedanJenisPenerangan
statusinteger1 jika berjaya, 0 jika permintaan gagal.
messagestringMedia files retrieved successfully, jika tidak, mesej ralat.
data.total_countintegerFail yang sepadan dengan penapis anda, merentasi semua halaman.
data.pageintegerHalaman yang dipulangkan.
data.limitintegerSaiz halaman yang digunakan, selepas pelarasan 1 hingga 100.
data.total_pagesintegerBilangan halaman. 0 apabila tiada fail.
data.has_nextbooleantrue jika ada halaman selepas halaman ini.
data.has_previousbooleantrue jika page lebih besar daripada 1.
data.media_filestatasusunanFail pada halaman ini, yang terbaharu dahulu. Kosong jika halaman melepasi penghujung.

Medan fail media#

MedanJenisPenerangan
idintegerID fail media. Gunakannya dengan Dapatkan fail media.
file_namestringNama simpanan fail.
original_file_namestringNama fail semasa ia dimuat naik.
file_urlstringURL muat turun terus. Gunakannya sebagai img_url atau file_url semasa menghantar.
file_typestringimage atau file.
file_sizeintegerSaiz dalam bait.
file_size_displaystringSaiz yang mudah dibaca dengan satu tempat perpuluhan, contohnya 512.0 KB.
mime_typestringJenis MIME, contohnya image/jpeg.
is_imagebooleantrue apabila file_type ialah image.
file_extensionstringSambungan huruf kecil bagi original_file_name, tanpa titik.
created_atstringMasa muat naik, ISO 8601 dalam UTC dengan ofset +00:00.
uploaded_bystring atau nullNama pengguna log masuk (biasanya alamat e-mel) ahli pasukan yang memuat naik fail.

Ralat#

Ralat juga memulangkan HTTP 200, dengan status ditetapkan kepada 0:

{ "status": 0, "message": "Invalid API key" }
MesejCara membetulkannya
client_id is requiredTambah client_id. Jika anda menghantar JSON, pastikan badannya JSON yang sah (ralat penghuraian dilaporkan dengan mesej ini).
api_key is requiredTambah api_key.
client_id must be a valid integerHantar client_id sebagai nombor.
Invalid API keyPastikan kunci wujud dan belum dipadam atau dinyahdayakan.
Invalid client_id for this API keyKunci itu milik client_id yang lain.
Error retrieving media files: …Biasanya page atau limit dalam rentetan pertanyaan atau medan borang bukan nombor bulat. Dalam badan JSON, tiada ralat: jika page bukan nombor bulat, page, limit, file_type dan search semuanya diabaikan, jadi anda mendapat halaman 1 dengan 20 fail tanpa penapis. Jika hanya limit yang bukan nombor bulat, limit, file_type dan search diabaikan.

Membaca setiap halaman#

Teruskan meminta halaman seterusnya selagi data.has_next ialah true.

Dapatkan semua fail media
import requests

files, page = [], 1

while True:
    result = requests.get(
        "https://wbiztool.com/api/v1/media/list/",
        params={"client_id": 12345, "api_key": "YOUR_API_KEY", "page": page, "limit": 100},
        timeout=60,
    ).json()
    if result["status"] != 1:
        raise RuntimeError(result["message"])

    files += result["data"]["media_files"]
    if not result["data"]["has_next"]:
        break
    page += 1

print(len(files), "files")

Petua#

  • Gunakan parameter hantar yang betul: apabila is_image ialah true, hantar URL sebagai img_url dengan msg_type 1; jika tidak, sebagai file_url dengan msg_type 2. Lihat Hantar mesej.
  • Jauhkan kunci API anda daripada log: rentetan pertanyaan sering direkodkan oleh proksi dan pelayan. Jika perkara ini penting bagi anda, gunakan POST dengan badan JSON.