# Special fields

> Hidden fields that control Formclick: access key, email subject, sender name, redirect and spam checks.

Source: https://docs.formclick.io/html-forms/special-fields

These field names have a special meaning. Most are control fields: Formclick uses them and then removes them, so they are not stored with the submission or shown in your email.

| Field | Purpose | Stored? |
| --- | --- | --- |
| `access_key` | **Required.** Your form’s access key. See [Access key](https://docs.formclick.io/html-forms/access-key). | No |
| `subject` | Subject line of your notification email. Can be hidden or a visible field. | Yes |
| `from_name` | Display name the notification email comes from, e.g. “Website Contact Form”. Max 100 characters. | No |
| `redirect` | Full `https://` URL to send the visitor to after submitting. See [Redirects](https://docs.formclick.io/html-forms/redirects). | No |
| `botcheck` | Honeypot checkbox. If it is ticked the submission is silently dropped. | No |
| `_honeypot` | Alternative honeypot text field. Any value drops the submission. | No |
| `_page` / `page_url` | The page the form was submitted from, shown with the submission. | As metadata |
| `g-recaptcha-response` | reCAPTCHA token, added by the widget (or by `formclick.min.js` for v3). See [reCAPTCHA](https://docs.formclick.io/html-forms/recaptcha). | No |
| `cf-turnstile-response` | Cloudflare Turnstile token, added by the widget. See [Turnstile](https://docs.formclick.io/html-forms/turnstile). | No |
| `name`, `email` | Regular fields, also used as the sender name and Reply-To address. | Yes |

## Full example

```html title="contact.html"
<form action="https://api.formclick.io/submit" method="POST"
      data-success-msg="Thanks! Your message has been sent.">
  <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY">

  <!-- Email subject and sender name for your notification -->
  <input type="hidden" name="subject" value="New message from your website">
  <input type="hidden" name="from_name" value="Website Contact Form">

  <!-- Honeypot: hidden from people, bots tick it -->
  <input type="checkbox" name="botcheck" style="display:none" tabindex="-1" autocomplete="off">

  <label>Name    <input type="text" name="name" required></label>
  <label>Email   <input type="email" name="email" required></label>
  <label>Message <textarea name="message" required></textarea></label>

  <button type="submit">Send message</button>
</form>

<!-- Handles submit, file upload, loading state and success/error messages. -->
<script src="https://cdn.formclick.io/formclick.min.js"></script>
```

## subject

Use a hidden field for a fixed subject, or a visible input to let the visitor write it. The subject is also saved with the submission so you can see it in the dashboard.

```html
<!-- Fixed subject -->
<input type="hidden" name="subject" value="New enquiry from the pricing page">

<!-- Or let the visitor choose -->
<input type="text" name="subject" placeholder="How can we help?">
```

> **Note:** A subject template set in the dashboard takes priority over the `subject` field. Line breaks are removed and long subjects are shortened.

## from_name

Sets the name your notification appears to come from. The sending address itself always stays a Formclick address so the email reaches your inbox; replies go to the visitor via Reply-To.

```html
<input type="hidden" name="from_name" value="Acme Careers Page">
```

## Page URL

Formclick records the referring page automatically. If you have one form on many pages and want the exact URL, send it yourself:

```html
<input type="hidden" name="page_url" id="page_url">
<script>document.getElementById('page_url').value = location.href;</script>
```
