Skip to main content
Object Storage Blueprint mengirimkan usage event ke Dodo Payments setiap kali pelanggan mengunggah file, beserta jumlah byte yang diunggah. Meter Sum atas bytes menjumlahkan volume unggahan setiap pelanggan, sehingga Anda dapat mengenakan biaya untuknya. Blueprint ini tersedia dalam paket npm @dodopayments/ingestion-blueprints sebagai trackObjectStorage(), dan berfungsi dengan S3, Google Cloud Storage, Azure Blob Storage, serta layanan object storage lainnya.

Kasus Penggunaan

Object Storage Blueprint cocok untuk skenario berikut:

File Hosting

Kenakan biaya kepada pelanggan berdasarkan total volume file yang mereka unggah.

Backup Services

Lacak unggahan data cadangan dan kenakan biaya berdasarkan jumlah data yang diunggah.

Media CDN

Pantau unggahan media dan kenakan biaya berdasarkan volume unggahan. Untuk mengenakan biaya bandwidth delivery, gunakan Stream Blueprint.

Document Management

Lacak unggahan dokumen per pelanggan untuk penetapan harga berbasis penggunaan.
Gunakan untuk mengenakan biaya berdasarkan volume unggahan pada layanan file hosting, media CDN, dan pencadangan. Blueprint ini menghitung byte yang diunggah, bukan byte yang disimpan dari waktu ke waktu.

Mulai Cepat

Untuk melacak unggahan, instal paket, buat meter, lalu kirimkan event setelah setiap unggahan berhasil.
1

Install the SDK

Instal paket Dodo Payments Ingestion Blueprints:
2

Get Your API Keys

Anda memerlukan dua set kredensial:
  • Kunci API Dodo Payments: Buat kunci di Developer → API Keys pada dashboard Dodo Payments, lalu simpan di DODO_PAYMENTS_API_KEY. Gunakan kunci test mode selama pengembangan. Kunci test mode hanya berfungsi dengan test_mode.
  • Kredensial penyedia storage: Kredensial yang digunakan SDK storage Anda untuk AWS S3, Google Cloud Storage, Azure Blob Storage, atau penyedia lainnya.
3

Create a Meter

Di dashboard Dodo Payments, buka Products → Meters dan klik Create Meter. Tetapkan kolom berikut:
  • Nama Meter: nama deskriptif, seperti Storage Uploads.
  • Nama Event: object_storage_upload, atau nama yang Anda pilih. Namanya harus sama persis dengan eventName dalam kode Anda (peka huruf besar-kecil).
  • Jenis Agregasi: Sum, untuk menjumlahkan byte yang diunggah.
  • Over Property: bytes, untuk mengenakan biaya berdasarkan ukuran unggahan.
  • Unit Pengukuran: unit yang ditampilkan pada invoice, seperti bytes.
4

Track Storage Usage

Kirimkan event setelah panggilan storage berhasil. Dalam contoh-contoh ini, unggahan yang gagal menimbulkan error sebelum trackObjectStorage() dijalankan, sehingga tidak ditagihkan.

Konfigurasi

Konfigurasi Ingestion

Teruskan opsi berikut ke new Ingestion():
string
wajib
Kunci API Dodo Payments Anda dari dashboard.
string
Mode environment: test_mode atau live_mode. Default-nya adalah test_mode. SDK Dodo Payments secara default menggunakan live_mode, jadi tetapkan live_mode secara eksplisit di production.
string
wajib
Nama event yang cocok dengan Nama Event pada meter Anda (peka huruf besar-kecil).

Opsi Track Object Storage

Teruskan opsi berikut ke trackObjectStorage():
string
wajib
ID pelanggan Dodo Payments yang akan ditagihkan untuk unggahan tersebut, misalnya cus_123.
number
Jumlah byte yang diunggah. Wajib untuk penagihan berbasis byte. Jika tidak disertakan, event tidak memiliki nilai bytes, tetapi tetap dihitung dalam meter Count.
object
Metadata opsional tentang unggahan, seperti nama bucket atau jenis konten. Setiap nilai harus berupa string, angka, atau boolean.

Praktik Terbaik

Lacak Sebelum atau Setelah Unggah: Anda dapat melacak event sebelum atau setelah unggahan sebenarnya, bergantung pada strategi penanganan error Anda.
API tidak memiliki endpoint untuk menghapus event yang telah di-ingest. Event yang dikirim sebelum unggahan lalu gagal akan tetap tercatat dalam penggunaan pelanggan.
Tangani Kegagalan Unggah: Lacak hanya unggahan yang berhasil agar Anda tidak mengenakan biaya untuk operasi yang gagal.
Terakhir diubah pada 26 September 2026