Web Forms

Let your customers reach you without opening their email client. Web forms turn your website or docs site into a direct support channel — visitors fill out a simple form, and their message becomes a GitHub Issue or Discussion, just like an email.

What visitors see

The form presents four fields:

Field Description
Name Full name (required, up to 100 characters)
Email Email address (required, up to 100 characters)
Subject Topic or title of their request (required)
Message Full description of their question or issue (required)

On the embeddable widget, visitors also see a Take Screenshot button. Clicking it opens the browser’s screen-sharing picker — they select a window or tab, Scitor captures a single frame as a screenshot, and it’s attached to the ticket automatically. This is useful for bug reports where showing what’s on screen is faster than describing it.

After submitting, visitors see a confirmation message: “Thank you for submitting your request. Our team will review the information provided and reply to you by email.” They can then send another request if needed.

Tip

The screenshot feature uses the browser’s built-in screen capture API. It works in Chrome, Edge, and Firefox on desktop. Mobile browsers typically don’t support it, so the button won’t appear there.

Embeddable widget

Add a support form to any website — your marketing site, app dashboard, or internal tools. Visitors see a floating “Help” button in the bottom-right corner. Clicking it opens a compact form panel without leaving the page.

Creating a form

Use the /create-form command in any issue or discussion comment:

/create-form Contact Support

Scitor responds with an embed code containing a unique form ID.

Embedding the form

Add the provided iframe code to your website:

<iframe
  src="https://www.scitor.io/forms/abc123"
  width="100%"
  height="600"
  frameborder="0"
  title="Contact Support"
></iframe>

Customizing the widget

You can customize the widget’s appearance by passing options to the embed script:

Option Default Description
headerText “Helpdesk” Title shown in the form panel header
subtitle “Contact us” Heading above the form fields
buttonText “Help” Label on the floating button
headerColor “blue” Background color of the panel header
buttonColor “#555” Background color of the floating button
width “340px” Width of the form panel
height “400px” Height of the form panel
name (empty) Pre-fill the visitor’s name (useful if they’re logged in)
email (empty) Pre-fill the visitor’s email (useful if they’re logged in)

Tip

If your visitors are already logged in, pre-fill name and email to save them time. Two fewer fields to fill out means more people will actually submit the form.

Docs contact form

Add a contact form directly to your knowledge base site. The floating placement adds a circular chat-bubble button in the bottom-right corner that visitors can click to open a compact form panel — it slides up smoothly and can be dismissed by clicking outside, pressing Escape, or clicking the button again.

Unlike the embeddable widget, the docs contact form is configured in scitor.yaml and automatically managed — no /create-form command needed. It includes Cloudflare Turnstile for spam prevention and shows a “Send Message” button that changes to “Sending…” while submitting. On success, visitors see: “Message sent! We’ll get back to you shortly.”

Setup

Add a contact section to your docs configuration:

docs:
  path: docs
  title: "My Support Docs"
  contact:
    placement: [footer, floating]

That’s it. On the next build, Scitor creates a form automatically and embeds it at the specified locations.

Placement options

Choose where the form appears by adding one or more placements:

Placement Description
footer Full-width form at the bottom of each page, below the content
article-bottom Form at the end of article content, inside the article area
sidebar Compact form at the bottom of the sidebar navigation
floating Floating action button (FAB) in the bottom-right corner that expands into a form

You can combine multiple placements. For example, a footer for visibility and floating for quick access from anywhere:

docs:
  contact:
    placement: [footer, floating]

Customization

Customize the form title and description:

docs:
  contact:
    placement: [footer]
    title: "Need help?"
    description: "Drop us a line and we'll get back to you within 24 hours."
Field Default
title “Can’t find what you’re looking for?”
description “Send us a message and we’ll get back to you.”

Spam prevention

The docs contact form includes three layers of spam prevention, all handled automatically:

  1. Honeypot field — A hidden field that bots fill in but humans don’t see. Submissions with this field filled are silently accepted (the bot thinks it succeeded) but discarded.
  2. Cloudflare Turnstile — A privacy-preserving CAPTCHA alternative. Scitor provides the Turnstile widget by default. If you prefer to use your own Turnstile site key, set turnstile_site_key in the config.
  3. Rate limiting — Server-side limits of 10 submissions per IP address per hour and 5 per email address per hour. Exceeding these limits returns a rate limit error.

What gets captured

Each form submission includes:

Field Description
Name Submitter’s full name
Email Submitter’s email address
Subject Topic or title of the request
Message Full message body (up to 5,000 characters on docs forms, 2,000 on embeddable widgets)
Screenshot Screen capture attachment (embeddable widget only)
Metadata Automatically collected: page URL, browser, OS, screen resolution, and any custom fields you pass via URL parameters

Processing

Form submissions go through the same pipeline as emails:

  1. Issue/Discussion created with form data in the body
  2. AI analysis applied (Pro plan) — sentiment, category, summary
  3. Labels applied automatically
  4. Metrics tracked — counts toward inbound_forms

You can reply to form submissions using the same /send command as emails.

Custom metadata

Pass additional metadata to the form via URL parameters:

<iframe
  src="https://www.scitor.io/forms/abc123?metadata.page=/pricing&metadata.plan=pro"
  ...
></iframe>

Metadata fields appear in the issue body, helping you understand the context of each submission.

Tip

Use metadata to track which page the form was submitted from, the user’s plan, or any other contextual information that helps your team respond effectively.

Scitor — Turn GitHub into your support platform