Pular para o conteúdo principal

Casos de Uso

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

Hospedagem de Arquivos

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

Serviços de Backup

Rastreie uploads de dados de backup e cobre por GB armazenado.

CDN de Mídia

Monitore uploads de mídia e cobre por armazenamento e largura de banda.

Gerenciamento de Documentos

Rastreie uploads de documentos por cliente para preços baseados em uso.
Perfeito para faturamento 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

Instale o SDK

npm install @dodopayments/ingestion-blueprints
2

Obtenha suas Chaves de API

  • Chave de API do Dodo Payments: Obtenha-a no Painel do Dodo Payments
  • Chave de API do Provedor de Armazenamento: Do AWS S3, Google Cloud Storage, Azure, etc.
3

Crie um Medidor

Crie um medidor no seu Painel do Dodo Payments:
  • Nome do Evento: object_storage_upload (ou seu nome preferido)
  • Tipo de Agregação: sum para rastrear o total de bytes enviados
  • Sobre Propriedade: bytes para faturar com base no tamanho do armazenamento
4

Rastreie o Uso de Armazenamento

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
required
Sua chave de API do Dodo Payments do painel.
environment
string
required
Modo de ambiente: test_mode ou live_mode.
eventName
string
required
Nome do evento que corresponde à sua configuração de medidor.

Opções de Rastreio de Armazenamento de Objetos

customerId
string
required
O ID do cliente para atribuição de faturamento.
bytes
number
Número de bytes enviados. Necessário para faturamento baseado em bytes.
metadata
object
Metadados opcionais sobre o upload, como nome do bucket, tipo de conteúdo, etc.

Melhores Práticas

Rastreie 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.
Gerencie Falhas de Upload: Rastreie apenas uploads bem-sucedidos para evitar faturar por operações falhadas.