Hoppa till huvudinnehåll

Användningsfall

Utforska vanliga scenarier som stöds av Objektlagringsplanen:

File Hosting

Fakturera kunder baserat på total lagringsanvändning och uppladdningsvolym.

Backup Services

Spåra uppladdningar av säkerhetskopieringsdata och ta betalt per lagrad GB.

Media CDN

Övervaka mediainladdningar och fakturera för lagring och bandbredd.

Document Management

Spåra dokumentuppladdningar per kund för användningsbaserad prissättning.
Perfekt för fakturering baserat på uppladdning av lagring, filhosting, CDN-användning eller säkerhetstjänster.

Snabbstart

Spåra objektlagringsuppladdningar med förbrukade byte:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

  • Dodo Payments API Key: Hämta den från Dodo Payments Dashboard
  • Storage Provider API Key: Från AWS S3, Google Cloud Storage, Azure, etc.
3

Create a Meter

Skapa en mätare i din Dodo Payments Dashboard:
  • Event Name: object_storage_upload (eller ditt föredragna namn)
  • Aggregation Type: sum för att spåra totala uppladdade byte
  • Over Property: bytes för att fakturera baserat på lagringsstorlek
4

Track Storage Usage

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
});

Konfiguration

Ingestionskonfiguration

apiKey
string
obligatorisk
Din Dodo Payments API-nyckel från instrumentpanelen.
environment
string
obligatorisk
Miljöläge: test_mode eller live_mode.
eventName
string
obligatorisk
Händelsenamn som matchar din mätarkonfiguration.

Spåra objektlagringsalternativ

customerId
string
obligatorisk
Kund-ID för faktureringsattributionen.
bytes
number
Antal uppladdade byte. Krävs för bytebaserad fakturering.
metadata
object
Valfri metadata om uppladdningen som bucket-namn, innehållstyp osv.

Bästa praxis

Spåra före eller efter uppladdning: Du kan spåra händelsen före eller efter den faktiska uppladdningen beroende på din felhanteringsstrategi.
Hantera uppladdningsfel: Spåra endast lyckade uppladdningar för att undvika fakturering för misslyckade operationer.