Forms and fields
Add your own visitor types and build the questions each one asks, with conditions, per-site questions and privacy rules.
Agoo is in early access. This page describes the feature as it ships to early-access organisations; screens are illustrative.
Every organisation asks different questions at the door. A bank wants an ID; a school wants to know which child is being collected; a church wants to welcome first-timers. In Agoo, each visitor type has its own questions, and you build them in Console → Settings → Forms. Owners and Admins can change forms.
Every visit already asks for the visitor's name, phone number, company and host. A form adds what else that kind of visit needs.
Plan limits
| Plan | Questions on each form | Visitor types you add (turned on at once) | Conditional questions |
|---|---|---|---|
| Free | 3 | None: the six built-in types only | No |
| Starter | 10 | 3 | No |
| Growth | Unlimited | 15 | Yes |
| Pro | Unlimited | As many as you need | Yes |
| Enterprise | Unlimited | As many as you need | Yes |
- Questions are counted on each form. Section headings don't count. The people form counts like any other.
- The six built-in types and their forms never count towards the visitor types you add, however much you change them.
- Limits apply when you publish. You can build a draft that goes over, then trim it or upgrade before publishing.
- Moving to a lower plan never changes a published form. Its questions keep being asked; to publish a change, the form has to fit your plan. See Plans and limits.
Build a form
Choose or add a visitor type
In Console → Settings → Forms, open one of the six built-in types (Meeting, Interview, Delivery, Contractor, Event, Other) or one you've added. To add a type, select Add visitor type and give it a name. See Visitor types below.
Add fields
Select Add a field and choose its kind. Write the question and any help text. Reorder fields by dragging them or with the arrows. Group related questions under a Section heading.
Set each field's rules
Mark fields required, choose who answers each one, add conditions, and set its privacy flags.
Preview, save and publish
The preview shows the questions as the visitor will see them (or as the desk does), with conditions working as you answer. Save draft keeps your changes without changing anything at the door. Publish makes them live as a new version: new visits use it at once, and visits already recorded keep the version they were made with.
Start from a template
Under Start from a template, pick the kind of organisation closest to yours (office, church, school, hospital or clinic, estate, bank, government office, co-working space, factory or warehouse, NGO or hotel) to see its questions. Add to drafts puts them into your forms' drafts for you to review: nothing changes at the door until you publish.
- Questions a form already has are kept as they are.
- Built-in forms get at most three questions from a template, so every template fits the Free plan.
- A template can suggest visitor types of its own, such as Parent pickup for a school. They're added when your plan has room.
- On plans without conditional questions, a template's conditions are left out: those questions are asked every time.
Visitor types
Every organisation starts with six built-in visitor types: Meeting, Interview, Delivery, Contractor, Event and Other. Add your own when a kind of visit needs its own questions or rules: Parent pickup at Ridge Academy, Vendor at Volta Bank, Service at Grace Chapel International.
| You want to | Do this |
|---|---|
| Add a type | Select Add visitor type and give it a name, then build its form. It's off until you publish its form; publishing turns it on, and it appears at the desk, on kiosks and in invitations. |
| Rename a type | Select Rename. Kiosks, passes and badges use the new name; visits already recorded keep their type. |
| Stop using a type | Turn it off. It can't be chosen for new visits, and visits already recorded keep it. Built-in types can be turned off but not deleted. At least one type stays on. |
| Delete a type | Only a type you added that was never published or used. Anything that was used is turned off instead. |
| Open it for pre-registration | Turn on Pre-registration for the type. It's off by default. With the visitor pages (P4), visitors can then choose the type when they register themselves and in website forms, and answer the questions asked of the visitor. Hosts can invite guests with any type that's turned on, whatever this setting. |
| Hand a type to a developer | Each type has a key, such as parent_pickup, made from its name when you add it. It never changes, even if you rename the type. Developers use it in the API. |
Visitor types and your plan
The six built-in types and their forms are part of every plan. Each type you add, while it's turned on, takes one of your plan's places (see Plan limits).
- Turning a type off frees its place. You don't need to delete it, and its visits keep their type. Turning it back on needs a free place.
- Moving to a lower plan never deletes or turns off a type, its form or its visits.
Who answers each field
Each field is either asked of the visitor or filled in by your staff.
| Setting | Who sees it | Use it for |
|---|---|---|
| Asked of the visitor | The visitor, on the kiosk, pre-registration and booking pages and website forms; and your staff at the desk | What only the visitor knows: company, vehicle plate, work order |
| Staff only | Reception, security and hosts, in the Console and the apps. Never shown to visitors or on pre-registration forms. | Checks and notes: induction completed, escort assigned, locker number |
Pre-registration pages, public booking pages and website forms show only the questions asked of the visitor. A booking type's intake questions come from its visitor type's form, and become public when you publish the booking type. Your approval rules, watchlist checks and staff-only fields are never shared with them.
Required questions must be answered before the visitor is let in: a walk-in answers them at the desk, and a guest invited without them is asked when they check in. Invitations made through the API can leave them for then.
Field types
| Field | Use it for |
|---|---|
| Short text | Names, company, car registration |
| Choice | Pick one or several from a list: purpose, department, relationship |
| Yes or no | A question answered Yes or No, such as "Did you come by car?" |
| Phone | Phone numbers, checked and stored in international format |
| Email addresses | |
| Date | Dates, such as a permit's expiry |
| Number | Counts, such as the size of a group, with a range and a unit if you like |
| Consent | A tick box with your wording, kept with the visit and the form's version |
| Person | Someone in your directory who receives visitors, such as an escort |
| Section | A heading that groups questions |
| Photo | A visitor photo for the badge, or a photo of a vehicle |
| File | A CV, permit or insurance certificate |
| Signature | A signature on the screen |
| ID scan | Capture an ID: typed, photographed or scanned on the device |
Photos, files, signatures and ID scans are taken by the kiosk and the Agoo app (P5); the Console lists them at the desk without asking. NDAs, waivers, site rules and your privacy notice, signed with a consent receipt, come with the visitor pages in P4 (NDAs and e-signature on Pro and Enterprise).
People's details have their own form, Details about people, filled in by admins on People pages. It can use short text, choice, Yes or no, phone, email, date, number and sections.
Conditions
On Growth and above, any question can depend on an earlier answer or on where the visitor is:
- Ask it only when an earlier Yes or no, consent or choice question has one of the answers you pick. For example, ask "Vehicle number plate" only when "Did you come by car?" is Yes, or "Which ward?" only when the purpose is "Visiting a patient".
- Required only when an earlier answer calls for it, such as a plate number only for visitors who drove.
- At these sites: ask a question only at some of your sites, so your warehouse can ask contractors about safety boots while head office doesn't. Visitor types keep one form for every site.
- Notify or deny on safety questions, such as a failed health or induction check, sends the visit to a person to decide. Arrives in P8.
Privacy flags on every field
Each field carries its own privacy settings, so personal data is handled correctly wherever it goes.
| Flag | What it does |
|---|---|
| Personal data | Marks the field as personal data under Act 843, so it's included in access and erasure requests |
| Sensitive | For special data, such as health or religion. Only Owners, Admins and the roles you choose see the question and its answers |
| Masked | Anyone at the desk can answer it, but only Owners, Admins and the roles you choose see the answer afterwards; others see "Hidden" |
| Retention | Delete the answers this many days after the visit ends, if sooner than your visitor data retention. The rest of the visit stays, and every deletion is logged |
Sensitive and masked answers stay inside Agoo. They're never sent to integrations: API keys, connected apps and webhooks don't get them. A field's newest settings apply to every answer it has had, so tightening a field protects what's already recorded.
Only collect what you need. Every field you add is data you must protect, explain in your privacy notice and delete on time. See Retention and deletion.
Changing a live form
Forms are versioned. Versions lists every published version with who published it and when; open one to read it or copy it back into your draft. Removing a field from the form doesn't delete answers already recorded: they stay with the visit until your retention rules remove them. A field's key stays with its kind of question, so old answers keep their meaning.
Questions are written in English for now. Translations come with Agoo's next language.