ऑडियंस
`audiences.list`, `get`, `create`, `update`, `delete`, `listContacts`, `addContact` और `removeContact`।
हर मेथड
const audiences = await openemail.audiences.list()const everyone = audiences.find((audience) => audience.builtin === 'default') const list = await openemail.audiences.create({ name: 'Product updates', description: 'Customers who asked to hear about releases',}) await openemail.contacts.create({ email: '[email protected]', name: 'Grace Hopper' })await openemail.audiences.addContact(list.id, { email: '[email protected]' }) const members = await openemail.audiences.listContacts(list.id, { limit: 200 }) await openemail.audiences.update(list.id, { name: 'Release notes' })await openemail.audiences.removeContact(list.id, '[email protected]')await openemail.audiences.delete(list.id) console.log(everyone?.contactCount, members.length)ऑडियंस इस वर्कस्पेस के contacts की एक नामित सूची है। हर contact अपने बनते ही अंतर्निहित डिफ़ॉल्ट ऑडियंस में होता है, और builtin वही है जो उस पंक्ति का नाम बताता है; बाक़ी बनाना, भरना और हटाना आपका काम है। नाम के बजाय builtin पर शाखा बनाएँ, क्योंकि नाम कोई भी बदल सकता है।
यह संस्करण सूचियाँ संभालता है और उन्हें कुछ भेजता नहीं। ढूँढ़ने लायक कोई broadcast मेथड नहीं है, और ऑडियंस में contact डालना contact पर नहीं बल्कि ऑडियंस पर लेखन है, इसलिए audiences:write ही एकमात्र scope है जो जाँचा जाता है।
addContact ऐसा पता लेता है जो पहले से contact है और जो नहीं है उसे 422 contact_not_found के साथ अस्वीकार करता है। पहले openemail.contacts.create से उसे सहेजें। किसी को दो बार जोड़ने पर वही सदस्यता लौटती है जो पहले से है, अपने मूल addedAt के साथ, इसलिए कॉल दोबारा करना सुरक्षित है।
डिफ़ॉल्ट ऑडियंस का नाम और विवरण किसी भी दूसरी की तरह बदला जा सकता है, पर उसे न हटाया जा सकता है और न छाँटा जा सकता है। दोनों 409 audience_immutable के साथ अस्वीकार होते हैं। जब आपका मतलब contact को हटाने से हो, तो contact को ही हटाएँ।
प्रतिक्रिया: AudienceResource
list इन्हीं की एक सादी array देता है, जिसमें डिफ़ॉल्ट ऑडियंस पहले और बाक़ी नवीनतम पहले, और get, create तथा update हर एक इनमें से एक देता है। listContacts इसके बजाय ContactResource की array देता है, यानी सदस्यता रिकॉर्ड नहीं बल्कि contacts ख़ुद।
idstring- टिकाऊ हैंडल, `aud_` के बाद 24 hex अक्षर। नाम अद्वितीय नहीं होते, इसलिए संग्रहीत कॉन्फ़िगरेशन में यही रखना चाहिए।
namestring- लिखते समय trim किया जाता है, 1 से 120 अक्षर। दो ऑडियंस एक ही नाम रख सकती हैं, क्योंकि ऑडियंस को उसके id से संबोधित किया जाता है।
descriptionstring | null- उनके लिए मुक्त टेक्स्ट जो यह सूची बाद में पढ़ेंगे। जब किसी ने कुछ न लिखा हो तो null, और `update` पर स्पष्ट null इसे मिटा देता है।
builtin'default' | (string & {}) | null- हर वर्कस्पेस में ठीक एक पंक्ति पर `default`, यानी वह ऑडियंस जो हर contact रखती है, और किसी के बनाए हर ऑडियंस पर null। यह union खुला रहता है ताकि बाद में जोड़ा गया कोई अंतर्निहित मान प्रकाशित प्रकार तोड़े बिना एडिटर में सँकरा हो सके।
contactCountnumber- ऑडियंस में कितने contacts हैं, जो कैश से नहीं बल्कि पढ़ने के क्षण गिने जाते हैं। `contacts.create` के दोनों ओर किए गए दो पाठ एक से अलग होंगे।
createdAtstring- ISO-8601 UTC, कि ऑडियंस कब बनाई गई। डिफ़ॉल्ट वाली के बाद सूची का क्रम यही तय करता है।
updatedAtstring- ISO-8601 UTC, नाम या विवरण बदलने पर बढ़ता है। सदस्यता में बदलाव इसे नहीं छूते।