मुख्य सामग्री पर जाएं

उपयोग के मामले

API गेटवे ब्लूप्रिंट द्वारा समर्थित सामान्य परिदृश्यों का अन्वेषण करें:

API-as-a-Service

एपीआई प्लेटफ़ॉर्म के लिए ग्राहक के अनुसार उपयोग ट्रैक करें और कॉल की संख्या के आधार पर शुल्क लें।

Rate Limiting

एपीआई उपयोग पैटर्न की निगरानी करें और उपयोग-आधारित दर-सीमा लागू करें।

Performance Monitoring

बिलिंग डेटा के साथ प्रतिक्रिया समय और त्रुटि दर को ट्रैक करें।

Multi-Tenant SaaS

विभिन्न एंडपॉइंट्स पर उनके एपीआई उपयोग के आधार पर ग्राहकों को बिल करें।
एपीआई एंडपॉइंट उपयोग, दर-सीमा, और उपयोग-आधारित एपीआई बिलिंग लागू करने के लिए आदर्श।

त्वरित प्रारंभ

उच्च मात्रा के परिदृश्यों के लिए स्वचालित बैचिंग के साथ गेटवे स्तर पर API कॉल को ट्रैक करें:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

3

Create a Meter

अपने Dodo Payments Dashboard में एक मीटर बनाएं:
  • Event Name: api_call (या अपनी पसंद का नाम)
  • Aggregation Type: count कॉल्स की संख्या ट्रैक करने के लिए
  • प्रतिक्रिया समय, स्थिति कोड आदि जैसे मेटाडेटा को ट्रैक करने पर अतिरिक्त गुण कॉन्फ़िगर करें।
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
  }
});

कॉन्फ़िगरेशन

इनजेशन कॉन्फ़िगरेशन

apiKey
string
आवश्यक
डैशबोर्ड से आपका Dodo Payments API कुंजी।
environment
string
आवश्यक
पर्यावरण मोड: test_mode या live_mode
eventName
string
आवश्यक
इवेंट नाम जो आपके मीटर कॉन्फ़िगरेशन से मेल खाता है।

API कॉल विकल्प ट्रैक करें

customerId
string
आवश्यक
बिलिंग अट्रिब्यूशन के लिए ग्राहक आईडी।
metadata
object
एपीआई कॉल के बारे में वैकल्पिक मेटाडेटा जैसे एंडपॉइंट, मेथड, स्थिति कोड, प्रतिक्रिया समय, आदि।

बैच कॉन्फ़िगरेशन

maxSize
number
ऑटो-फ़्लश से पहले अधिकतम ईवेंट की संख्या। डिफ़ॉल्ट: 100
flushInterval
number
मिलीसेकंड में ऑटो-फ़्लश अंतराल। डिफ़ॉल्ट: 5000 (5 सेकंड)।

सर्वोत्तम प्रथाएँ

उच्च मात्रा के लिए बैचिंग का उपयोग करें: जो एप्लिकेशन प्रति सेकंड 10 से अधिक अनुरोधों को संभालते हैं, वे ओवरहेड कम करने और प्रदर्शन में सुधार के लिए createBatch() का उपयोग करें।
हमेशा बैच साफ़ करें: लंबित ईवेंट्स को फ्लश करने और डेटा हानि से बचने के लिए एप्लिकेशन शटडाउन पर batch.cleanup() को कॉल करें।