> For the complete documentation index, see [llms.txt](https://docs.insurgrid.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.insurgrid.com/intake-forms/submissions.md).

# Submissions

Completed forms are delivered to you, not fetched by you.

When someone completes one of your forms, the submission is **delivered** to your webhook endpoint as a `form-submission` event. That event carries everything: the contact details, every answer, links to any uploaded files, and the filled ACORD forms where the form maps onto them.

> ⚠️ **The Forms API doesn't return submissions.** There is no route under `/api/v1/forms` to list them or fetch one by id — the webhook delivery is how a submission reaches your systems.

That shapes how you should build against it:

**Treat your handler as the front door.** It's where a submission enters your system, not a notification that something is waiting to be collected. Write it down when it arrives.

**Download files when they land.** The `url` on a `file_upload` answer, and `acord.archive_url`, are unsigned links to a public bucket — they don't expire, but anyone holding one can download the file without authenticating, and a `url` becomes `null` once the document is no longer available. Fetch the file, store it where you control access, and don't pass the link around.

**Make it safe to run twice.** Delivery is at-least-once, so the same event can arrive again. `data.submission_id` is the key to de-duplicate on.

Every submission also appears in your InsurGrid dashboard, where you can read the answers and download files by hand — useful for support lookups, but not a substitute for storing what you need at delivery.

The payload, the authentication options and a working handler are all in [Quickstart B](/intake-forms/b-embed-form.md).

## Related

* [Quickstart B — share a form & receive submissions](/intake-forms/b-embed-form.md)
* [Delivery & de-duplication](/guides/delivery-dedup.md)
* [Forms API](/intake-forms/forms.md) — the forms that produce submissions


---

# 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.insurgrid.com/intake-forms/submissions.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.
