Portal Tokens
A Portal Token has scope TenantActiveSurveys. It opens a tenant-wide landing page that lists active surveys eligible for the public portal flow, so a visitor can choose one and answer it.
Purpose
A Portal Token gives one shared entry point to every eligible survey your tenant currently publishes. Instead of sharing a separate link for each survey, you share one portal link. Visitors pick which survey to answer from a list.
Who Creates It
An authorized tenant user with Tenant.ManagePortalTokens creates a Portal Token from the dashboard. Platform staff need the matching System permission and selected-tenant context.
What the Visitor Sees
The visitor opens a landing page titled like "Choose a survey". It lists the tenant's currently active, published surveys as cards. When there are no active surveys, the landing page shows an empty-state message instead of cards.
What the Visitor Can Do
- See the list of eligible surveys on the landing page.
- Choose a survey and select Open survey to start it.
- Submit anonymously when
AllowAnonymousSubmissionis enabled. An eligible tenant user can send JWT authentication so the public-origin response is attributed. - Return to the portal and complete another survey.
- Submit again if you enabled multiple submissions.
What the Visitor Cannot Do
- View collected responses or results.
- See dashboard navigation or dashboard screens.
- Reach surveys or data belonging to any other tenant.
- Choose surveys that are not currently active and published.
Creation Steps
- Open the Dashboard.
- In the sidebar, open Access Links & Tokens and choose Portal Tokens.
- Open the Create Portal Token page.
- Set any optional fields you need. There is no survey selector — the portal is tenant-wide by design.
- Choose Create.
- On the issued page, use the Copy button to copy the one-time link (or Open to preview it).
- Share the copied link with your intended audience through a safe channel.
Field Guide
| Field | Required | What it does |
|---|---|---|
| Name | No | A label to help you recognize the token later in the list. |
| Expires at | No | The date and time the portal stops working. |
| Max responses | No | The maximum number of responses that may be submitted through the portal. |
| Passcode | No | A secret code the visitor must enter to open the portal. |
| Require passcode | No | A switch that turns passcode entry on for this token. |
| Anonymous submission | No | A switch that records responses without identifying the visitor. |
| Multiple submissions | No | A switch that lets the same visitor submit more than one response. |
There is deliberately no survey dropdown on this page: a Portal Token is tenant-wide, while public survey eligibility remains server-authoritative.
Expiration
If you set Expires at, the portal stops opening after that moment. An expired token cannot open its landing page.
Passcode
If you turn on Require passcode and set a Passcode, the visitor must enter the correct code before the landing page opens. A wrong passcode shows a generic "unable to open" message and does not reveal any internal state.
Revoke
You can revoke a Portal Token at any time from the dashboard. Revoke is a POST action protected by antiforgery. Once revoked, the token can no longer open its landing page.
Plan Limit
The number of active, unexpired Portal Tokens is governed by MaxPortalTokens. Creation is transaction-coordinated. A plan downgrade reconciles capacity by retaining the oldest allowed tokens and revoking newer excess tokens; expired tokens do not consume capacity.
One-Time Link Display
The raw link is shown exactly once, on the issued page, right after you create it, with Copy and Open buttons. It is never retrievable later and is never stored in plain form; only a hash is kept. List and detail pages show safe metadata only — name, scope, status, availability window, and usage capacity — never the raw link or its hash. If you lose the link, create a new one and revoke the old one.
Practical Example
You want to give a field team one entry point to whatever surveys your tenant currently runs. Create a Portal Token, optionally set an expiry, copy the one-time link, and share it with the team. Each team member opens the portal, picks a survey from the list, answers it, and returns to the portal to complete another.
Resulting Public Route
https://example.com/portal/{token}
When a visitor opens a specific survey from the landing page, the survey page is reached at:
https://example.com/portal/{token}/open/{surveyId}
The {token} placeholder is filled in with the value shown once on the issued page.
Troubleshooting
| Symptom | Likely cause | What to do |
|---|---|---|
| "This link has expired" | The Expires at time has passed. | Create a new token and share it. |
| The landing page shows no surveys | Your tenant has no currently active, published surveys. | Publish or activate at least one survey. |
| "Unable to open" after entering a code | The passcode is wrong. | Re-check the passcode you shared, or issue a new token. |
| The portal will not open | The token was revoked. | Create a new token if access is still needed. |
| "Limit reached" when creating | You have reached MaxPortalTokens. | Revoke a token you no longer need, or review your plan limit. |
| You cannot reach the create page | Your account lacks Tenant.ManagePortalTokens or the matching selected-tenant System permission. |
Ask an authorized administrator to create the token or grant access. |