फ़ॉर्म बनाएँ
`document` से, किसी `starter` से, या दोनों में से कुछ न भेजने पर सिर्फ़ एक ईमेल फ़ील्ड वाले फ़ॉर्म से एक ड्राफ़्ट बनाता है, और पूरा फ़ॉर्म लौटाता है। उसी कॉल में उसे लाइव करने के लिए `publish: true` भेजें।
असली कॉल आपके वर्कस्पेस पर चलाता है।
POST /forms
document से, किसी starter से, या दोनों में से कुछ न भेजने पर सिर्फ़ एक ईमेल फ़ील्ड वाले फ़ॉर्म से एक ड्राफ़्ट बनाता है, और पूरा फ़ॉर्म लौटाता है। उसी कॉल में उसे लाइव करने के लिए publish: true भेजें।
उदाहरण
forms:write चाहिए, और जब यह डबल ऑप्ट-इन चालू करे, भेजने वाला पता तय करे या पुष्टि ईमेल सेट करे, तो emails:send भी चाहिए।
curl -X POST "$OE/forms" -H "$AUTH" -H 'content-type: application/json' -d '{ "name": "Newsletter sign-up", "starter": "newsletter", "settings": { "audienceIds": ["aud_4c1b8e2a7d9f05c36b4e8a71"], "doubleOptIn": true, "senderAddress": "[email protected]" }, "publish": true}'{ "object": "form", "id": "frm_3b9d2e7a1c4f80d56e2a9b14", "name": "Newsletter sign-up", "description": null, "status": "live", "url": "https://openemail.uk/form/frm_3b9d2e7a1c4f80d56e2a9b14", "subscribeUrl": "https://api.openemail.uk/subscribe/frm_3b9d2e7a1c4f80d56e2a9b14", "audienceIds": ["aud_4c1b8e2a7d9f05c36b4e8a71"], "doubleOptIn": true, "hasUnpublishedChanges": true, "document": { "fields": [ { "id": "fld_k2m8q4w9z1x7", "type": "email", "key": "email", "label": "Email", "placeholder": "[email protected]", "help": null, "required": true, "defaultValue": null, "options": [], "mapsTo": "email", "width": "full", "minLength": null, "maxLength": null, "min": null, "max": null } ], "copy": { "title": "Join our list", "description": "News from us, about once a month.", "submitLabel": "Subscribe", "successTitle": "You are on the list", "successMessage": "Thanks for signing up.", "pendingTitle": "Check your inbox", "pendingMessage": "Open the email we sent and confirm to finish.", "closedTitle": "This form is closed", "closedMessage": "It is not taking new sign-ups right now.", "footer": null }, "style": { "accent": "#18181b", "background": "#f4f4f5", "surface": "#ffffff", "text": "#18181b", "font": "system", "radius": "md", "width": "normal", "layout": "card", "align": "left", "logoUrl": null } }, "publishedDocument": { "fields": ["…"], "copy": { "title": "Join the list" }, "style": { "accent": "#18181b" } }, "settings": { "audienceIds": ["aud_4c1b8e2a7d9f05c36b4e8a71"], "doubleOptIn": true, "senderAddress": "[email protected]", "confirmSubject": "Please confirm your subscription", "confirmMessage": "Confirm your email address to start getting our messages.", "confirmButton": "Confirm my subscription", "successAction": "message", "redirectUrl": null, "notifyAddresses": ["[email protected]"] }, "audiences": [{ "id": "aud_4c1b8e2a7d9f05c36b4e8a71", "name": "Newsletter", "builtin": false }], "senderIssue": null, "senderProblem": null, "stats": { "views": 1840, "submissions": 212, "added": 198, "pending": 14, "lastSubmittedAt": "2026-09-30T16:42:11.000Z" }, "publishedAt": "2026-09-12T08:00:00.000Z", "createdAt": "2026-09-10T14:20:00.000Z", "updatedAt": "2026-09-12T08:00:00.000Z"}settings सेटिंग्स का कोई भी हिस्सा लेता है, और बाकी अपने डिफ़ॉल्ट पर रहती हैं।
settings.audienceIds में, और किसी audiences फ़ील्ड में, हर ऑडियंस इसी वर्कस्पेस की ऐसी ऑडियंस होनी चाहिए जिस तक आप पहुँच सकते हैं, वरना जवाब 404 audience_not_found होता है।
डबल ऑप्ट-इन फ़ॉर्म को settings.senderAddress चाहिए, यानी ऐसा पता जिससे आप भेज सकते हैं। जो भेजने वाला पता भेज नहीं सकता, वह 422 form_sender_refused के साथ अस्वीकार होता है।
जब publish true हो और फ़ॉर्म प्रकाशित न हो सके, तो कुछ नहीं बनता।
एक वर्कस्पेस डिफ़ॉल्ट रूप से 100 फ़ॉर्म रख सकता है। इसके बाद वाला 422 workspace_limit_reached के साथ अस्वीकार होता है।