Pular para o conteúdo principal

Casos de Uso

Explore cenários comuns suportados pelo Blueprint de Armazenamento de Objetos:

File Hosting

Cobrar clientes com base no uso total de armazenamento e no volume de uploads.

Backup Services

Acompanhar uploads de dados de backup e cobrar por GB armazenado.

Media CDN

Monitorar uploads de mídia e cobrar por armazenamento e largura de banda.

Document Management

Acompanhar uploads de documentos por cliente para precificação baseada no uso.
Perfeito para cobrança com base em uploads de armazenamento, hospedagem de arquivos, uso de CDN ou serviços de backup.

Início Rápido

Rastreie uploads de armazenamento de objetos com bytes consumidos:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

  • Dodo Payments API Key: Obtenha no Dodo Payments Dashboard
  • Storage Provider API Key: Da AWS S3, Google Cloud Storage, Azure, etc.
3

Create a Meter

Crie um medidor no seu Dodo Payments Dashboard:
  • Event Name: object_storage_upload (ou o nome de sua preferência)
  • Aggregation Type: sum para rastrear o total de bytes enviados
  • Over Property: bytes para cobrar com base no tamanho do armazenamento
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
});

Configuração

Configuração de Ingestão

apiKey
string
obrigatório
Sua chave de API do Dodo Payments no painel.
environment
string
obrigatório
Modo de ambiente: test_mode ou live_mode.
eventName
string
obrigatório
Nome do evento que corresponde à configuração do seu medidor.

Opções de Rastreio de Armazenamento de Objetos

customerId
string
obrigatório
O ID do cliente para atribuição de cobrança.
bytes
number
Número de bytes enviados. Obrigatório para cobrança com base em bytes.
metadata
object
Metadados opcionais sobre o upload, como nome do bucket, tipo de conteúdo etc.

Melhores Práticas

Rastrear antes ou depois do upload: Você pode rastrear o evento antes ou depois do upload real dependendo da sua estratégia de tratamento de erros.
Lidar com falhas de upload: Rastreie apenas uploads bem-sucedidos para evitar cobrar por operações com falha.