Vai al contenuto principale

Casi d’uso

Esplora scenari comuni supportati dall’API Gateway Blueprint:

API-as-a-Service

Monitora l’utilizzo per cliente sulle piattaforme API e addebita in base al numero di chiamate.

Rate Limiting

Monitora i modelli di utilizzo delle API e implementa limitazioni di velocità basate sull’uso.

Performance Monitoring

Monitora tempi di risposta e tassi di errore insieme ai dati di fatturazione.

Multi-Tenant SaaS

Fattura i clienti in base al loro consumo di API attraverso diversi endpoint.
Ideale per monitorare l’utilizzo degli endpoint API, il rate limiting e implementare la fatturazione delle API basata sull’utilizzo.

Avvio Veloce

Monitora le chiamate API a livello di gateway con batching automatico per scenari ad alto volume:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

3

Create a Meter

Crea un meter nel tuo Dodo Payments Dashboard:
  • Nome evento: api_call (o il nome che preferisci)
  • Tipo di aggregazione: count per monitorare il numero di chiamate
  • Configura proprietà aggiuntive se monitori metadati come tempi di risposta, codici di stato, ecc.
4

Track API Calls

import { Ingestion, trackAPICall } from '@dodopayments/ingestion-blueprints';

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

// Track a single API call
await trackAPICall(ingestion, {
  customerId: 'customer_123',
  metadata: {
    endpoint: '/api/v1/users',
    method: 'GET',
    status_code: 200,
    response_time_ms: 45
  }
});

Configurazione

Configurazione dell’Ingestione

apiKey
string
obbligatorio
La tua chiave API Dodo Payments dal dashboard.
environment
string
obbligatorio
Modalità ambiente: test_mode o live_mode.
eventName
string
obbligatorio
Nome dell’evento che corrisponde alla configurazione del tuo meter.

Opzioni di Monitoraggio delle Chiamate API

customerId
string
obbligatorio
L’ID cliente per l’attribuzione della fatturazione.
metadata
object
Metadati opzionali sulla chiamata API come endpoint, metodo, codice di stato, tempo di risposta, ecc.

Configurazione del Batch

maxSize
number
Numero massimo di eventi prima dell’auto-flush. Valore predefinito: 100.
flushInterval
number
Intervallo di auto-flush in millisecondi. Valore predefinito: 5000 (5 secondi).

Migliori Pratiche

Usa il batch per volumi elevati: per applicazioni che gestiscono più di 10 richieste al secondo, usa createBatch() per ridurre il sovraccarico e migliorare le prestazioni.
Pulisci sempre i batch: chiama batch.cleanup() alla chiusura dell’applicazione per svuotare gli eventi in sospeso ed evitare la perdita di dati.