Skip to main content
O Object Storage Blueprint envia um evento de uso para Dodo Payments sempre que um cliente envia um arquivo, incluindo o número de bytes enviados. Um medidor Sum sobre bytes soma o volume enviado de cada cliente, para que você possa cobrar por ele. O blueprint é distribuído no pacote npm @dodopayments/ingestion-blueprints como trackObjectStorage() e funciona com S3, Google Cloud Storage, Azure Blob Storage e outros serviços de object storage.

Casos de uso

O Object Storage Blueprint é adequado para estes cenários:

File Hosting

Cobre os clientes pelo volume total dos arquivos que eles enviam.

Backup Services

Acompanhe os uploads de dados de backup e cobre pelo volume de dados enviado.

Media CDN

Monitore uploads de mídia e cobre pelo volume enviado. Para cobrar pela largura de banda de entrega, use o Stream Blueprint.

Document Management

Acompanhe os uploads de documentos por cliente para precificação baseada em uso.
Use-o para cobrar por volume enviado em serviços de hospedagem de arquivos, CDN de mídia e backup. O blueprint contabiliza os bytes enviados, não os bytes armazenados ao longo do tempo.

Início rápido

Para acompanhar uploads, instale o pacote, crie um medidor e envie um evento após cada upload bem-sucedido.
1

Install the SDK

Instale o pacote Dodo Payments Ingestion Blueprints:
2

Get Your API Keys

Você precisa de dois conjuntos de credenciais:
  • Chave de API do Dodo Payments: crie uma em Developer → API Keys no dashboard do Dodo Payments e armazene-a em DODO_PAYMENTS_API_KEY. Use uma chave de modo de teste durante o desenvolvimento. Uma chave de modo de teste funciona somente com test_mode.
  • Credenciais do provedor de armazenamento: as credenciais usadas pelo seu SDK de armazenamento para AWS S3, Google Cloud Storage, Azure Blob Storage ou outro provedor.
3

Create a Meter

No dashboard do Dodo Payments, acesse Products → Meters e clique em Create Meter. Configure estes campos:
  • Meter Name: um nome descritivo, como Storage Uploads.
  • Event Name: object_storage_upload ou um nome escolhido por você. Ele deve corresponder exatamente a eventName no seu código (diferencia maiúsculas de minúsculas).
  • Aggregation Type: Sum, para somar os bytes enviados.
  • Over Property: bytes, para cobrar pelo tamanho do upload.
  • Measurement Unit: a unidade exibida nas faturas, como bytes.
4

Track Storage Usage

Envie o evento depois que a chamada de armazenamento for concluída com sucesso. Nestes exemplos, um upload com falha gera um erro antes que trackObjectStorage() seja executado, portanto ele não é cobrado.

Configuração

Configuração de ingestão

Passe estas opções para new Ingestion():
string
obrigatório
Sua chave de API do Dodo Payments obtida no dashboard.
string
Modo do ambiente: test_mode ou live_mode. O padrão é test_mode. Os SDKs do Dodo Payments usam live_mode por padrão; portanto, defina live_mode explicitamente em produção.
string
obrigatório
Nome do evento que corresponde ao Event Name do seu medidor (diferencia maiúsculas de minúsculas).

Opções de acompanhamento de object storage

Passe estas opções para trackObjectStorage():
string
obrigatório
O ID do cliente do Dodo Payments a ser cobrado pelo upload, por exemplo, cus_123.
number
Número de bytes enviados. Obrigatório para cobrança baseada em bytes. Se você omiti-lo, o evento não terá um valor bytes, mas ainda será contabilizado em um medidor Count.
object
Metadados opcionais sobre o upload, como nome do bucket ou tipo de conteúdo. Cada valor deve ser uma string, um número ou um booleano.

Boas práticas

Acompanhe antes ou depois do upload: você pode acompanhar o evento antes ou depois do upload propriamente dito, dependendo da sua estratégia de tratamento de erros.
A API não tem um endpoint para excluir um evento ingerido. Um evento enviado antes de um upload que falha posteriormente permanece no uso do cliente.
Trate as falhas de upload: acompanhe somente uploads bem-sucedidos para não cobrar por operações com falha.
Última modificação em 26 de setembro de 2026