Forms
The Forms space module. How to create a space with one form or several, build the fields in the editor (14 types, steps, required, lock to profile, preview), choose who fills it in, protect it with a password, publish it through the link, get each submission by e-mail, work the submissions list with status, filters and CSV, save whoever submitted as a member and send submissions to webhooks, HubSpot and RD Station.
A form collects structured data from people who are members and people who aren't yet: the demo request on your website, the sign-up for a program, an application for a job, the interest list for a course that will open later. Each submission reaches the responsibles by e-mail and stays in a submissions list, one by one, with a handling status, filters and CSV, inside the community, without Google Forms or Typeform.
Forms is a space module, on the Community tab of Add Space, described as "Collect data from members and visitors, with a submissions list". Every form lives in a Forms space.
Form or survey
| Survey | Form | |
|---|---|---|
| What for | Measuring opinion: NPS, satisfaction, climate | Collecting contact details and requests |
| Field types | Choice, scale, NPS and text | Name, e-mail, phone, company, job title, text, choices, number, date, link and consent |
| What the team sees | The consolidated results (charts, NPS), with optional anonymity | Each submission, one by one, with name and e-mail, and a handling status |
| Notice | An e-mail invitation when it opens | An e-mail to the responsibles on each submission |
| Becomes a member | No | Optional: Save as member |
Create the space
- In the sidebar, Add Space, Community tab, Forms.
- Under How the space works, choose:
- One form: "The space is the form itself and opens right on it." The next step of the same window asks for the Form title (and an Introduction, optional); Create form ends in its editor.
- Several forms: "A list: create as many forms as you want in this space." The space opens on the list, with New form.
- The form starts as a Draft: "nobody sees it until you publish", not even through the link.
Who creates
Whoever the space lets post: the space's Who can post option (see Spaces). The owner and the admin can always create. In a Several forms space, people outside the selection don't see New form (and the API answers 403). In a One form space, the form is born with the space, by whoever created it.
A member who creates a form manages it like the team, with one difference: the Anyone with the link and Save as member options are team only (owner, admin, moderator and finance). The member doesn't see them in the editor, and the API refuses with 403 if they try to turn them on.
The editor
The editor already is the screen whoever fills it in sees: you write the title and the introduction in place, and each field shows as it will look.
- Steps. The form is split into steps (sections), each with a title and a description; whoever fills it in moves on with Next. New step creates another; Remove step removes the step and its fields (submissions already received keep their answers). Up to 20 steps.
- Fields. Add field or the + between two fields inserts in place. Up to 100 fields per form. Drag to reorder, or use Up, Down and Move to step.
- Properties. Click a field to open the Field panel: Type, Required, Sample text in the field and, on a number, Minimum and Maximum. You write the label and the Help text on the field itself. Duplicate and Remove are in the panel.
- Save. The top shows Unsaved changes or All saved; Save stores it.
- Preview. Preview shows the form As a member (with a sample name, e-mail and phone coming from a profile) or As a visitor, without saving anything; at the end, it shows the thank-you message or where the person would go.
The 14 field types
| Type | What it checks |
|---|---|
| Name | Text; comes from the profile for a signed-in member |
| A valid address; comes from the profile | |
| Phone | With the country, in international format; comes from the profile |
| Company | Text |
| Job title | Text |
| Short text | Up to 200 characters |
| Long text | Up to 5,000 characters |
| Single choice | One of the options (2 to 50) |
| Multiple choice | One or more options (2 to 50) |
| Number | A number, within the minimum and maximum, if any |
| Date | A valid date |
| Link (URL) | An address that starts with http:// or https:// |
| Document (CPF or passport) | A CPF with its check digits, or a passport or other document as text (3 to 40 characters); the team sees the whole number |
| Consent (privacy) | The agreement checkbox, always required |
Name, e-mail, phone, company and job title go in once each per form: they make up the contact (in the list, the search, the e-mails and Save as member).
Lock to profile
On the Name, Email and Phone fields, a signed-in member finds the profile value already filled in. With Lock to profile on ("For a signed-in member, the value comes from the profile and cannot be edited"), they can't change the value in the form, and the field shows "From your profile." Off, the value comes filled in and the person can change it. For a visitor, it is a regular field.
Settings
Settings, at the top of the editor, opens four tabs. They apply when you save the form.
Who fills it in
| Option | What it does |
|---|---|
| Members with access to the space | "They fill it in in the app or by the link, signed in." The submission is linked to the member |
| Anyone with the link | "No sign-in, with a bot check and required consent." Only the team turns it on |
| Save as member | Each submission invites the person to the community, with a tag named after the form (see below). Needs a required e-mail field. Only the team turns it on |
| Access password | "Whoever opens the link types the password before seeing the form. It is not an account password." At least 6 characters; to change it, type the new one (blank keeps the current one) |
| Privacy policy (link) | Shown in the consent. Without it, Memberfy's terms of use apply |
Check at least one of the first two. A form open to visitors always has the Consent (privacy) field: the editor adds it on its own and doesn't let you remove it.
After sending
- Show a message: the Thank-you message on the same screen. Without one written, it shows "We got your submission. Thank you! Your answers reached the team."
- Send to a website: the person goes to the Destination link, which must start with
https://.
Deadline and cap
- Close on: the date and time the form closes on its own, in the community's time zone (the abbreviation shows next to it). With no date, it stays open until you close it. Remove the deadline clears it.
- Submission cap: "When the cap is reached, the form closes on its own." The cap is checked on the submission itself: two submissions at the same time never go past it. With no number, No cap.
Notices
- Responsibles: who gets an e-mail for each submission and sees the submissions list, up to 20 people (search by name). Whoever creates the form is a responsible.
- Confirmation to the sender: on by default, it sends the "We received your submission" e-mail to the address in the e-mail field (for a signed-in member, the account's e-mail). The text is fixed: it only says the community received the submission, in the community's color, without repeating the answers.
Publish, close and delete
| Status | What happens |
|---|---|
| Draft | Visible only to whoever manages it; the link doesn't open |
| Open | The link opens and the form takes submissions; members with access to the space see it in the list |
| Closed | The link shows "Form closed. This form no longer takes submissions." |
- Publish needs at least one field besides the consent. If the form accepts members, a publication by the team notifies by e-mail whoever has access to the space, once, 10 minutes later, in the Forms category (see E-mails from this community). A publication by a member sends no e-mail.
- Close stops taking submissions; the ones received stay in the list. Reopen opens it again (with the deadline passed or the cap reached, change them first).
- Delete takes the link offline and the form leaves the list. The submissions stay stored for the owner.
- You can edit the form in any status. Each submission keeps a copy of what was submitted, with the field's label at that moment.
The public link
Copy link, in the editor, copies the form's address, on the community's domain: clube.memberfy.net/f/…. The link's code is long and can't be guessed.
- A signed-in member fills it in through the link or the space's list, with no bot check.
- A visitor (with Anyone with the link on) fills it in without an account. Before sending, the browser solves a bot check, invisible most of the time; there is also a cap on submissions per internet address every 10 minutes. Past the cap, the screen asks to wait.
- On a members-only form, whoever isn't signed in sees "Sign in to fill it in. This form is for members of the community only."
- With a password, the screen asks for the Access password before showing the fields. Getting it wrong several times blocks new attempts for a few minutes, and after many wrong passwords on the same form within 1 hour, whoever opens it goes through an anti-robot check before trying again; the form is not locked. If access expires while the person is filling it in, they type the password again and the answers are still there.
Errors show on the field itself: "Fill in this field.", "Type a valid email.", "Check the consent to send.", "The minimum is …".
Embed on your website
The Embed button, next to Copy link, opens two snippets to paste into your website's HTML, where the form should appear:
- Script (recommended): the height adjusts automatically, with no scroll bar.
- iframe: for sites that don't accept scripts; the height is fixed (adjust the
heightif needed).
Both use the domain of the form's public link (the community's own domain, when it has one). Embedded, the form shows compact, in the community's colors; links open in a new tab, and the redirect after submitting takes the page where it is embedded. On a members-only form, sign-in opens in a new tab. Everything else works as through the link: anti-robot check, access password, limits and Save as member.
The embedded form's language follows the script's data-lang (for example, data-lang="en-US"; on the link, ?lang=) and, without it, the community's language, never the visitor's browser. The Embed dialog already fills data-lang with the community's language.
Consent (privacy)
When the form accepts visitors, the community starts collecting data from people who aren't members and is the controller of that data (under Brazil's LGPD and similar laws). So:
- the Consent (privacy) field is required and can't be removed; the default text is "I agree to the use of this data so the team can contact me.", and you can rewrite it;
- next to it shows the link to the Privacy policy you provided (without it, Memberfy's terms of use) and the notice "Your data goes to the … team.";
- each submission keeps the proof of consent: the accepted text, the policy link and the date and time. The submission shows Consent: Yes, "Accepted on …".
Submissions stay stored until someone on the team deletes them; there is no automatic deletion.
The submissions
Submissions, in the editor (with the Submissions received counter and how many are new), opens the list. Each row has the date, the origin (Member or Visitor), the name, the e-mail and the status.
Who sees it: whoever created the form, the team (owner, admin, moderator and finance) and the responsibles. Other members can't open the list, the submission or the CSV (403).
- Status: New ("Nobody has talked to this person yet."), In contact and Done, in any order, under Manage submission.
- Filters: status, origin, period (From and To) and the search "Search by name, email or answer".
- The submission: all the answers, the date, the member (when signed in), the Save as member result and the proof of consent.
- Export CSV: the submissions of the current filter, one column per field, with status, origin and dates in the community's time zone.
- Deleting a submission takes it out of the list and the CSV; the others don't change (and the submission cap doesn't reopen).
Save as member
With Save as member on, each submission becomes a contact inside the community:
| Who submitted | What happens | Shows on the submission as |
|---|---|---|
| Someone who isn't a member yet | Gets the e-mail invitation to join the community, with the form's tag | Invited as a member |
| Someone whose e-mail is already a member | Only gets the tag; nothing else changes in the profile | Already a member: tagged |
| A signed-in member | Only gets the tag | Already a member: tagged |
| Someone, with the community at the plan's member limit | The submission is stored, with no invitation | Not a member yet (plan limit) |
| Someone, with the daily invitation limits hit (100 new members per form, 3 per sender and the invitation e-mail limit) | The submission is stored; nobody is created and no invitation goes out | Not a member yet (invitation limit) |
| Someone who asked not to get invitations from the community | The submission is stored, with no invitation | Asked not to join |
- The tag carries the form's name and is created on its own with the first submission (see Tags).
- No password in the form. The form never asks for an account password: the person joins through the invitation e-mail, like any invitee (see Invite members).
- With the option off, the submission stays only in the form's list.
E-mails
| Email (subject) | When | Who receives it | Can it be turned off? |
|---|---|---|---|
| New submission in … | On each submission, with the main fields and View the submission | The responsibles | Yes: the Forms category |
| … new submissions in … | More than 20 submissions of the same form in an hour: the following ones come together, in a single e-mail, an hour later | The responsibles | Yes: Forms |
| We received your submission: … | On each submission, if Confirmation to the sender is on; fixed text | The submission's e-mail | No: it confirms what the person did |
| Invitation to join | With Save as member, for whoever isn't a member | The submission's e-mail | No |
| New form | The team publishes a form open to members | Whoever has access to the space | Yes: Forms |
The same address gets at most one e-mail (confirmation or invitation) per form every 24 hours; the following submissions are stored without a new e-mail. All e-mails go out through the queue, in the background.
Limits
| What | Limit |
|---|---|
| Steps per form | 20 |
| Fields per form | 100 |
| Options per choice field | 2 to 50 |
| Short text · Long text | 200 · 5,000 characters |
| Responsibles | 20 |
| Access password | 6 to 100 characters |
| Wrong passwords on the same form | After many within 1 hour, an anti-robot check before trying again |
| New members through Save as member | 100 per form and 3 per sender, per day, plus the invitation e-mail limit |
| Visitor submissions per internet address | 20 every 10 minutes |
| E-mails to the sender | 1 per address, per form, every 24 hours |
| E-mails to the responsibles | 20 per form every hour; the rest in a digest |
Integrations
Each submission triggers the form.submitted event ("A form was submitted", Forms family): the form, the submission, the origin, the member (when signed in), each field with its label and answer, and the consent. The internet address of whoever submitted never goes. See Webhook events.
- Webhooks and Zapier, Make and n8n: subscribe to
form.submittedorform.*. - HubSpot: creates the contact with name, e-mail, phone, company, job title and the consent.
- RD Station: records the "Submitted the form …" conversion and, with the consent, the legal basis.
Two rules protect the contacts you already have:
- A visitor never changes an existing contact. Anyone can type someone else's e-mail into an open form. So only a signed-in member's submission with their own profile e-mail touches a contact already in the CRM; a visitor's becomes a note on the contact (HubSpot) or only the conversion (RD Station). See the details in each app's article.
- If you already turned on HubSpot or RD Station, check the event. Existing installations don't get
form.submittedon their own: open the integration, check A form was submitted and save. A new installation already comes with it.
Through the assistant
The assistant builds, publishes and follows up on forms with 17 tools, with the same rules as the app (who creates, team-only options, who sees the submissions). Before publishing, it calls publish_form with dry_run and shows how many people get the notice e-mail and what each submission does (with Save as member, the invitation); it only publishes after your yes. Deleting a form or a submission asks to confirm. The assistant only checks the consent when filling in a form after you have read the text and said yes.
In Claude, the Collect with a form recipe does the whole path. See Tools · Members and Recipes.
In the API
The team's routes are under /api/forms (with the X-CommunityId), and those for whoever fills it in through the link under /api/public/forms/{token}. The full list, with examples, is in the API Reference, generated from the API itself.
Frequently asked questions
Can I put the form on my website?
Yes: Embed, next to Copy link, gives you the snippets to paste into your website. See Embed on your website. You can also put the …/f/… address on a button.
Can I receive a file or charge in the form? No. To charge, use a product; to receive files, a Support or Call for papers space.
Who sees a visitor's data? Whoever created the form, the team and the responsibles. The person who filled it in is told so on the screen ("Your data goes to the … team.").
I deleted the form. Did I lose the submissions? No: they stay stored for the owner, until they delete each one.