दस्तावेज़ पर जाएँ
SDK

इंस्टॉल

एक पैकेज, कोई dependency नहीं, हर सर्वर रनटाइम।

इंस्टॉल

पहली रिलीज़ 0.0.1 है। हर प्रलेखित ऑपरेशन के लिए एक method है, कोई छूट जाए तो पैकेज की parity जाँच बिल्ड फेल कर देती है, और जिस API को यह लपेटता है वह हर environment में चालू है।

pnpm add @openemail/sdk
send-email.ts
import { init, openemail } from '@openemail/sdk' init({ apiKey: process.env.OPENEMAIL_API_KEY }) const email = await openemail.emails.send({  from: 'Acme Billing <[email protected]>',  to: '[email protected]',  subject: 'Your September invoice',  html: '<p>Invoice attached.</p>',}) console.log(email.id, email.status)

init साझा openemail क्लाइंट को एक बार कॉन्फ़िगर करता है, और उसके बाद जो भी मॉड्यूल openemail import करता है उसे वही क्लाइंट मिलता है। इसे छोड़ दें तो पहला कॉल क्लाइंट को OPENEMAIL_API_KEY से बना लेता है।

send() का resolve हो जाना इसका मतलब नहीं कि संदेश चला गया। शेड्यूल किया गया या रद्द किया जा सकने वाला send queued या scheduled लौटता है और बाद में तय होता है। status पढ़ें, न कि यह कि promise resolve हो गया।

यह कहाँ चलता है

शून्य रनटाइम dependency, Node 20+, Bun, Deno और Cloudflare Workers पर। यह वैश्विक fetch के अलावा कुछ नहीं इस्तेमाल करता, और आप अपना भी दे सकते हैं।

ESM और CommonJS दोनों शिप होते हैं, हर एक अपनी type declaration के साथ, इसलिए import { openemail } from '@openemail/sdk' और const { openemail } = require('@openemail/sdk') दोनों चलते हैं।

ब्राउज़र में नहीं। क्लाइंट एक workspace API key लिए चलता है जो मेल भेज सकती है और मेलबॉक्स पढ़ सकती है, इसलिए जहाँ window और document मौजूद हैं वहाँ यह शुरू होने से इनकार कर देता है। डिस्पोज़ेबल इनबॉक्स अपवाद हैं: createTempMail() को कोई key नहीं चाहिए और वह किसी पेज में चलता है।

यह एक **TypeScript/JavaScript** क्लाइंट है, और कोई Python, Go, PHP या Ruby पैकेज नहीं है। किसी और भाषा से API सादा HTTP और JSON है: क्विकस्टार्ट में आठ भाषाओं में चलता हुआ request है, और OpenAPI दस्तावेज़ बाकी अधिकांश के लिए क्लाइंट जेनरेट कर देता है।