Langsung ke konten utama

Kasus Penggunaan

Jelajahi skenario umum yang didukung oleh Blueprint Penyimpanan Objek:

Hosting File

Tagih pelanggan berdasarkan total penggunaan penyimpanan dan volume unggahan.

Layanan Cadangan

Lacak unggahan data cadangan dan biaya per GB yang disimpan.

Media CDN

Monitor unggahan media dan tagih untuk penyimpanan dan bandwidth.

Manajemen Dokumen

Lacak unggahan dokumen per pelanggan untuk penetapan harga berbasis penggunaan.
Sempurna untuk penagihan berdasarkan unggahan penyimpanan, hosting file, penggunaan CDN, atau layanan cadangan.

Memulai dengan Cepat

Lacak unggahan penyimpanan objek dengan byte yang digunakan:
1

Instal SDK

npm install @dodopayments/ingestion-blueprints
2

Dapatkan Kunci API Anda

  • Kunci API Dodo Payments: Dapatkan dari Dasbor Dodo Payments
  • Kunci API Penyedia Penyimpanan: Dari AWS S3, Google Cloud Storage, Azure, dll.
3

Buat Meter

Buat meter di Dasbor Dodo Payments:
  • Nama Acara: object_storage_upload (atau nama yang Anda pilih)
  • Tipe Agregasi: sum untuk melacak total byte yang diunggah
  • Atas Properti: bytes untuk menagih berdasarkan ukuran penyimpanan
4

Lacak Penggunaan Penyimpanan

import { Ingestion, trackObjectStorage } from '@dodopayments/ingestion-blueprints';
import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3';
import fs from 'fs';

const ingestion = new Ingestion({
  apiKey: process.env.DODO_PAYMENTS_API_KEY,
  environment: 'test_mode',
  eventName: 'object_storage_upload'
});

const s3 = new S3Client({ region: 'us-east-1' });

// Read the file (example: from disk or request)
const fileBuffer = fs.readFileSync('./document.pdf');

// Upload to S3
const command = new PutObjectCommand({
  Bucket: 'my-bucket',
  Key: 'uploads/document.pdf',
  Body: fileBuffer
});

await s3.send(command);

// Track the upload
await trackObjectStorage(ingestion, {
  customerId: 'customer_123',
  bytes: fileBuffer.length
});

Konfigurasi

Konfigurasi Ingesti

apiKey
string
required
Kunci API Dodo Payments Anda dari dasbor.
environment
string
required
Mode lingkungan: test_mode atau live_mode.
eventName
string
required
Nama acara yang sesuai dengan konfigurasi meter Anda.

Opsi Lacak Penyimpanan Objek

customerId
string
required
ID pelanggan untuk atribusi penagihan.
bytes
number
Jumlah byte yang diunggah. Diperlukan untuk penagihan berbasis byte.
metadata
object
Metadata opsional tentang unggahan seperti nama bucket, tipe konten, dll.

Praktik Terbaik

Lacak Sebelum atau Setelah Unggahan: Anda dapat melacak acara sebelum atau setelah unggahan yang sebenarnya tergantung pada strategi penanganan kesalahan Anda.
Tangani Kegagalan Unggahan: Hanya lacak unggahan yang berhasil untuk menghindari penagihan untuk operasi yang gagal.