# Best practices for forms

- **Start with the hosted page.** It already handles required answers, uploads, saving and resuming,
  signatures and the confirmation. Build your own front end only when the form must live inside
  your site's design.
- **Make the form from the board.** Its questions then map one-to-one onto the board's columns,
  choices offer the column's own options, and every submission lands as a clean row.
- **Read the questions at run time.** Load `GET /v1/public/forms/<slug>` rather than hard-coding
  field ids and options, so edits to the form never break your page.
- **Use drafts for long forms.** Anything with documents or more than a few minutes of typing should
  save as it goes — drafts validate nothing until they are filed.
- **Follow `postSubmit`.** After a submit, show the thank-you or go to `redirectUrl` as the form's
  settings say.
- **Submit once.** A filed draft answers `409` to a second submit; show the person their receipt
  instead of trying again.
- **Never use a key in a form.** Public form routes are safe in a browser; board keys are not.
