Skip to content

Dashboard ​

The dashboard at https://app.formhaus.dev is for the people who own the forms. Role limits are in Teams and roles.

Pages ​

PagePathWhoWhat it does
Sign in/loginAnyoneTakes an email and sends a one-time link. The answer is the same whether or not an account exists.
Continue/auth/{token}AnyoneConfirms the link on this device and starts a session.
Forms/All rolesForms of the workspace, search by title or ID
New from JSON/forms/newOwner, editorPublishes a pasted definition as a new form
Form overview/forms/{id}All rolesStatus, 30-day chart, latest version, snippets for the hosted link, endpoint, embed, React and Vue
Responses of a form/forms/{id}/responsesAll rolesTable, search, date range, detail drawer, CSV export
Form settings/forms/{id}/settingsOwner, editorAfter submit, webhook, notifications, new version, pause, delete
Responses/responsesAll rolesLatest responses across all forms
Webhooks/webhooksOwner, editorWebhook URL and health of every form
API keys/keysOwnerCreates, lists and revokes keys
Usage and plan/usageAll rolesSubmissions this month, plans
Members/settings/membersAll rolesMembers, invites, roles, workspace name, leave, delete
Account/settings/accountAll rolesWeekly summary on or off, delete the account
Claim/claim/{token}AnyoneMoves forms published by an agent to the workspace
Invite/invites/{token}AnyoneJoins a workspace

The top bar shows the submissions meter, the plan, a link to the docs, a theme toggle and the account menu. The account menu lists workspaces and switches between them.

Sign-in ​

ItemValue
Sign-in linkOne use, valid 15 minutes
Session cookie30 days, HttpOnly, Secure, SameSite=Lax
AccountCreated on the first sign-in, with a personal workspace

Forms ​

ColumnContent
Title, IDThe ID has a copy button. A Webhook failing badge shows after repeated failures.
StatusActive, Paused or Unverified (unclaimed)
This monthSubmissions in the current UTC month
Last responseRelative time
Created byAgent or Human

A workspace with no forms shows the MCP setup command, the config and a publish_form prompt.

New from JSON ​

Takes a Formhaus definition. The definition is checked with @formhaus/core; every problem is listed with its path. Publishing creates the form with an endpoint and a hosted link. Plan limits and publishing rules apply.

Responses ​

  • Columns come from the latest definition; keys from older versions follow.
  • Search and a date range (presets or from and to) filter the table.
  • A row opens a drawer with all values, the form version, skipped steps, referrer and user agent. Arrows step through responses.
  • Export CSV downloads all responses of the form. Format: REST API.

Form settings ​

SectionContent
After submitSuccess message with an optional Submit another response button, or a redirect URL. Applies to all versions.
WebhookURL, signing secret with Reveal and Rotate, Send test, last 100 deliveries. See Webhooks.
Email notificationsMilestones or Off. See Email notifications.
Paste JSON as a new versionPublishes a version at the same endpoint. Responses keep the version they were submitted with.
Danger zonePause or Resume, and Delete form (owner only, type the form title, or the ID for an untitled form, to confirm)

A paused form answers 409 paused and the hosted page says it is paused. A form paused after abuse reports stays paused until Formhaus reviews it.

Webhooks ​

Lists each form with its URL, a status (Healthy, Failing, No deliveries yet, Not set) and the last delivery. A link goes to the form settings.

API keys ​

ActionResult
CreateOptional name up to 100 characters. The fh_live_... key is shown once.
ListName, prefix, created, last used, revoked state
RevokeThe key stops working at once

A workspace has at most 20 active keys. Keys act as editors of the workspace. Agent keys moved by a claim appear here as Agent key (claimed YYYY-MM-DD), limited to forms it created. Use: Authorization: Bearer <key> on https://api.formhaus.dev/mcp and https://api.formhaus.dev/v1.

Usage and plan ​

Shows submissions used this month against the limit, a bar per form, the reset date and the three plans. When the limit is reached a banner says new submissions return 402 until the reset. Upgrade to Pro is shown to owners. Limits are in Plans, limits and data.

Members and Account ​

Teams and roles describes members, invites, leaving and deletion.

Claim ​

The claim page lists the forms that move together and says how many forms of the same agent were published for another email and stay unclaimed. Without a session it links to sign-in and returns after the link is opened in the same browser. Viewers see a notice to switch to a workspace where they are an editor or owner. Rules: Publishing.

Hidden characters ​

The dashboard shows zero-width, bidirectional and tag characters, and variation selectors, as \u{XXXX} in respondent values, field keys, form titles, success messages and workspace names. A zero-width joiner between emoji and a variation selector after an emoji stay as they are. The REST API and MCP return values unchanged.

Formhaus is MIT licensed. Legal