> For the complete documentation index, see [llms.txt](https://docs.stackai.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.stackai.com/guides-and-quickstarts/interfaces-and-end-user-experiences/publish-a-form-interface.md).

# Publish a Form interface

A form interface collects defined inputs before running a workflow. Use it when people must supply several fields or files in a consistent structure.

{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQ1Sgy933krTyK0S4JpP%2Fuploads%2FJHfgRF27fxrYlMwEnYcR%2FG056.mp4?alt=media&token=46ee4899-39c1-4b84-8fa0-fde42fbdaade>" %}

## Before you start

Have a workflow with the inputs and output the form will use.

## Choose the form interface

Open Interface, select Form, and apply it.

![Form interface selection controls](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/XWyU57KGU4qSj1oYJ575/assets/g056-g056-01-interface.png)

Review the input and output blocks created from the workflow's available fields.

## Configure fields and labels

Open Form Block Settings with the input block's edit control.

![Form field labels and mappings](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/g2JjxgaKZ1x5VsZMJzRJ/assets/g056-g056-02-input.png)

Set a clear field label, placeholder, and required status without changing the intended workflow mapping.

Give the form a title that explains its purpose.

![Form field labels and mappings](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/EmryU6HNaCsWnNvEYoW2/assets/g056-g056-03-title.png)

Users should be able to tell what the submission will produce before they complete the fields.

## Set the cover and submit action

Choose a cover style and edit the submit button text.

![Form cover and submit controls](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/pIRxWoLFXprRzRj3WEAj/assets/g056-g056-04-style.png)

Use a short action label that describes what happens when the user submits the form.

## Preview and publish the form

Complete the draft form and submit it.

![Form preview and publication controls](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/mB3aLZNoUt1sgmxIRRDI/assets/g056-g056-05-draft.png)

Wait for execution to finish, then inspect the output associated with the submission.

Save the configuration, review [Security and the intended audience](/guides-and-quickstarts/interfaces-and-end-user-experiences/interface-authentication-and-access.md), and complete the required [publication process](/guides-and-quickstarts/releases-and-environments/publish-and-unpublish-a-project.md). If approval is required, wait for deployment to complete before testing the generated form link.

![Form preview and publication controls](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/hVVBCKIO9erdeWKbwNEb/assets/g056-g056-06-publish.png)

Open the generated form link to check the end-user route.

Submit the published form with representative information.

![Form preview and publication controls](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/IeLWAHop4rXDEkVanWJP/assets/g056-g056-07-result.png)

Confirm that the required fields, submit action, and resulting output behave as intended.

## Review submission history

Open Result History to review an earlier submission and use Return to Live Form to resume.

![Form submission result history](https://content.gitbook.com/content/SQ1Sgy933krTyK0S4JpP/blobs/EtkAi4MwIHMNYcIJ93S3/assets/g056-g056-08-history.png)

If you use Download all, inspect the downloaded file to confirm its contents.

## Let the agent work with a submitted file

Add a **Files** input to the workflow and expose it as a file input block in the form. Choose whether it is required. Supply the file for each independent submission and check the displayed result and download.

The form block collects the file; the agent still needs the corresponding prompt reference and file-processing configuration. Follow [Let an agent work with uploaded files](/guides-and-quickstarts/interfaces-and-end-user-experiences/let-an-agent-work-with-uploaded-files.md) for those shared steps, then test them through your form.

## Important behavior

Each form submission runs the connected workflow. Required fields must be completed before submission.

Result History shows previous submissions. Select Return to Live Form to make a new submission.

## Continue

* [Interface authentication and access](/guides-and-quickstarts/interfaces-and-end-user-experiences/interface-authentication-and-access.md)
* [Publish and unpublish a project](/guides-and-quickstarts/releases-and-environments/publish-and-unpublish-a-project.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.stackai.com/guides-and-quickstarts/interfaces-and-end-user-experiences/publish-a-form-interface.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
