Skip to main content
Object Storage Blueprint हर बार ग्राहक द्वारा फ़ाइल अपलोड करने पर अपलोड किए गए bytes की संख्या के साथ Dodo Payments को usage event भेजता है। bytes पर Sum meter हर ग्राहक के upload volume को जोड़ता है, ताकि आप उसके लिए शुल्क ले सकें। यह blueprint @dodopayments/ingestion-blueprints npm package में trackObjectStorage() के रूप में शामिल है और S3, Google Cloud Storage, Azure Blob Storage तथा अन्य object storage services के साथ काम करता है।

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

Object Storage Blueprint इन परिदृश्यों के लिए उपयुक्त है:

File Hosting

ग्राहकों द्वारा अपलोड की गई फ़ाइलों के कुल volume के आधार पर उनसे शुल्क लें।

Backup Services

Backup data uploads को ट्रैक करें और अपलोड किए गए data की मात्रा के आधार पर शुल्क लें।

Media CDN

Media uploads की निगरानी करें और upload volume के आधार पर शुल्क लें। Delivery bandwidth के लिए शुल्क लेने हेतु Stream Blueprint का उपयोग करें।

Document Management

Usage-based pricing के लिए प्रत्येक ग्राहक के document uploads को ट्रैक करें।
File hosting, media CDN और backup services के लिए upload volume के आधार पर शुल्क लेने हेतु इसका उपयोग करें। Blueprint समय के साथ stored bytes की गणना नहीं करता, बल्कि uploaded bytes की गणना करता है।

त्वरित शुरुआत

Uploads को ट्रैक करने के लिए package install करें, meter बनाएं और प्रत्येक सफल upload के बाद एक event भेजें।
1

Install the SDK

Dodo Payments Ingestion Blueprints package install करें:
2

Get Your API Keys

आपको credentials के दो सेट चाहिए:
  • Dodo Payments API key: Dodo Payments dashboard में Developer → API Keys के अंतर्गत एक key बनाएं और उसे DODO_PAYMENTS_API_KEY में store करें। Build करते समय test mode key का उपयोग करें। Test mode key केवल test_mode के साथ काम करती है।
  • Storage provider credentials: आपके storage SDK द्वारा उपयोग किए जाने वाले credentials, जैसे AWS S3, Google Cloud Storage, Azure Blob Storage या किसी अन्य provider के लिए।
3

Create a Meter

Dodo Payments dashboard में Products → Meters पर जाएं और Create Meter पर click करें। ये fields सेट करें:
  • Meter Name: कोई वर्णनात्मक नाम, जैसे Storage Uploads।
  • Event Name: object_storage_upload या अपनी पसंद का कोई नाम। यह आपके code में मौजूद eventName से बिल्कुल मेल खाना चाहिए (case-sensitive)।
  • Aggregation Type: अपलोड किए गए bytes को जोड़ने के लिए Sum।
  • Over Property: upload size के आधार पर शुल्क लेने के लिए bytes।
  • Measurement Unit: invoices पर दिखाई जाने वाली unit, जैसे bytes।
4

Track Storage Usage

Storage call सफल होने के बाद event भेजें। इन examples में, failed upload trackObjectStorage() के चलने से पहले error throw करता है, इसलिए उसके लिए शुल्क नहीं लिया जाता।

Configuration

Ingestion Configuration

इन options को new Ingestion() में pass करें:
string
आवश्यक
Dashboard से प्राप्त आपकी Dodo Payments API key।
string
Environment mode: test_mode या live_mode। Default रूप से test_mode। इसके बजाय Dodo Payments SDKs default रूप से live_mode पर काम करते हैं, इसलिए production में live_mode को स्पष्ट रूप से सेट करें।
string
आवश्यक
वह event name जो आपके meter के Event Name से मेल खाता हो (case-sensitive)।

Object Storage Options को ट्रैक करें

इन options को trackObjectStorage() में pass करें:
string
आवश्यक
Upload के लिए charge किए जाने वाले Dodo Payments customer ID, जैसे cus_123।
number
अपलोड किए गए bytes की संख्या। Byte-based billing के लिए आवश्यक। यदि आप इसे छोड़ देते हैं, तो event में कोई bytes value नहीं होगी, लेकिन यह फिर भी Count meter में शामिल होगा।
object
Upload के बारे में optional metadata, जैसे bucket name या content type। प्रत्येक value string, number या boolean होनी चाहिए।

सर्वोत्तम अभ्यास

Track Before or After Upload: आपकी error handling strategy के आधार पर आप event को actual upload से पहले या बाद में ट्रैक कर सकते हैं।
API में ingested event को delete करने के लिए कोई endpoint नहीं है। यदि upload के बाद वह fail हो जाए, तो उससे पहले भेजा गया event ग्राहक के usage में बना रहता है।
Handle Upload Failures: केवल सफल uploads को ट्रैक करें, ताकि failed operations के लिए शुल्क न लिया जाए।
अंतिम संशोधन 26 सितंबर 2026