Surveys Reference Public

Getting started

Switch Surveys on, run its migrations, grant the right permissions, and publish your first optional survey and required consent prompt step by step.

Guide version: r4 Module version: 1.7.1 Updated: 2026-08-27 Estimated time: 5 min 8 views 0% helpful

Before you begin

You need an administrator session with the Surveys permission. It works on either database, and which one you are on decides what you are editing: on the main database you author the platform’s surveys, and inside a tenant workspace you author that tenant’s own. Same screens, different data — a banner at the top of each page says which.

1. Enable the module

Go to Settings → Manage Modules and switch Surveys on. If you upgraded from a build that had the old App Rating report, the upgrade already switched it on for you.

Why this one matters more than most. The mobile app’s rating endpoint now belongs to this module. Turning the module off makes POST /v1/api/me/app-rating answer 404 for every mobile client.

2. Create the tables

php erpat migrate:modules --all

This creates six tables on the main database and on every tenant, plus the module toggle each tenant needs to see the menu at all.

Use --all, not a bare run. Without it only the main database is touched, and tenant administrators get no Surveys menu and no tables — with no error to tell you why.

3. Grant access

In Roles, find the System: Surveys group and grant:

PermissionGive it to
SurveysAnyone who should read results. Without it the menu group is hidden.
Create / Edit / DeletePeople who write surveys.
Publish / archiveOnly those who may start interrupting real users. Keep this list short.
View / Change Survey SettingsSeparate again, because Settings carries the limits that apply to every tenant.

4. Decide what tenants may do

Open Surveys → Survey Settings → Tenant Policy. Two switches, both of which start on:

This tab exists on the main database only. These switches decide what every workspace is allowed to do, so they are yours alone — a tenant administrator opening Survey Settings sees only General and Survey Defaults, and never sees the Tenant Policy tab or the values in it.
SwitchStartsWhile it is off
Let tenants create their own surveysOnA tenant administrator can open the module but cannot author or publish anything.
Let tenants publish required surveysOnThey can publish optional surveys only — no blocking modals.

Both start on because the module itself is switched on for every workspace — a tenant that has Surveys should be able to use it, consent notices included. Turn authoring off here if you would rather author everything centrally; the tenant keeps read access either way. The two are cumulative, so required does nothing while authoring is off.

The second one deserves a moment’s thought. A required survey puts a modal in front of a user that they cannot dismiss until they answer. Because it ships on, a tenant administrator can do that to their entire workforce without involving you. That is a reasonable thing to allow — it is their staff, and their surveys never leave their own workspace — but if you would rather sign off on blocking prompts yourself, switch it off before you onboard tenants. Your choice then sticks.

These limits live on the main database only. Inside a tenant workspace the same controls appear greyed out with a “set by your provider” note, so a tenant administrator can see the constraint rather than wondering why the option is missing.

5. Load the demo data (optional but recommended)

php erpat db:seed SurveysDemo

Adds a category, one optional survey, and one required consent survey. Both surveys arrive as drafts — nothing is shown to anyone until you publish. Add --tenant=<company key> to seed a workspace instead. Remove them again with php erpat db:seed SurveysDemo --remove.

6. Publish your first survey

  1. Open Surveys in the left menu.
  2. Go to the Surveys page and choose New Survey.
  3. Give it a title, pick Optional, and write a short message.
  4. Add a question — try Star rating to begin with.
  5. Save. It is a draft; still nothing has happened to anyone.
  6. When you are ready, use the row menu and choose Publish.

Load any page in ERPat as a targeted user and the prompt appears. Answer it, then check the Responses page.

Then try a required one

Repeat the steps, but choose Required and paste some real policy text into the message. Publish it and reload a page. Notice that:

  • Escape and clicking the background do nothing.
  • There is no × and no Cancel.
  • I Agree stays greyed out until the text has been scrolled to the end.
  • I Disagree is always available — there is no dead end.

Answer it either way, and look at the response row: it carries the version, the time, your IP address, your browser, and a fingerprint of exactly the text you saw.

A sensible first week

  1. Publish one optional rating survey and leave it alone for a week.
  2. Read the acceptance and response rates on Overview.
  3. Only then try a required one, and start with a small audience — a single tenant.
Was this guide helpful?

Report a content problem