---
name: "forms_export_responses"
area: "forms"
title: "Export responses to CSV"
price: "$0.001"
method: "POST"
url: "https://api.conecto.chat/v1/tools/forms_export_responses"
mcp_server: "https://api.conecto.chat/mcp/forms"
auth: "Authorization: Bearer <conecto_sk_ key>"
docs_url: "https://conecto.chat/tools/forms/forms_export_responses"
---

# Export responses to CSV (`forms_export_responses`)

Saves a CSV of a form's responses in the file store and returns a download link.

A CSV file of a form's responses in the file store, with a download link: one row per response, oldest first, one column per field in form order, then the link values. Opens in Excel, Numbers and Google Sheets. With since, only responses from then on. Free when there is nothing to export.

Price: $0.001 a call. A call that fails costs nothing.

## Use it when

The owner wants the responses in Excel, Numbers or Google Sheets.

## Say this to your agent

> Put all the repair survey answers in a spreadsheet for me.

## Inputs

| Name | Type | Required | Description | Allowed values | Default |
|---|---|---|---|---|---|
| `form` | string | yes | The form's form_id or slug (forms_list shows both). 1 to 60 characters. |  |  |
| `since` | string | no | Only responses from this time on: ISO 8601 (2026-10-01T00:00:00Z) or a date (2026-10-01, UTC). Up to 40 characters. |  |  |
| `link_hours` | integer | no | How long the download link works, in hours (up to 168, one week). 1 to 168. |  | `24` |

## Example

Written for Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon.

MCP: call `forms_export_responses` on the MCP server `https://api.conecto.chat/mcp/forms` with these arguments:

```json
{
  "form": "repair-feedback"
}
```

REST:

```bash
curl https://api.conecto.chat/v1/tools/forms_export_responses \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"form": "repair-feedback"}'
```

## Response

```json
{
  "call_id": "5f0c8a2e-3b7d-4c1e-9a64-2d8e1f7b0c93",
  "tool": "forms_export_responses",
  "status": "succeeded",
  "replayed": false,
  "cost_usd": "$0.001",
  "balance_usd": "$19.75",
  "result": {
    "file": {
      "file_id": "a6f6ad0d-ae36-4822-9768-ac9b96404568",
      "name": "repair-feedback-responses-2026-10-14.csv",
      "content_type": "text/csv",
      "size": "483 bytes",
      "size_bytes": 483,
      "sha256": "4ca1fd6542d6d8751f466c3e4cee2c8514f4b6a2e7800897d384ada1ed46d7ca",
      "created_at": "2026-10-14T08:00:00+00:00",
      "download_url": "https://cncto.co/d/a6f6ad0d-ae36-4822-9768-ac9b96404568?t=eyJmIjoiYTZmNmFkMGQtYWUzNi00ODIyLTk3NjgtYWM5Yjk2NDA0NTY4IiwiZXhwIjoxNzkyMTU4OTMyfQ:1xHLvg:kss90bAn1tZvO69r4DiO627ydQ5DceE_bacvLMtIAKk",
      "link_expires_in_hours": 24
    },
    "rows": 2
  }
}
```

`result`: The CSV file with its file_id and download link, and how many rows; with nothing to export, a note and no file (free).

## Errors

| Code | Status | When | Fix |
|---|---|---|---|
| `not_found` | 404 | No form of the business has that form_id or slug. | Call forms_list and use a form_id or slug from it. |
| `invalid_input` | 400 | since is not an ISO 8601 time or a date. | Send a time like 2026-10-01T00:00:00Z or a date like 2026-10-01. |
| `storage_full` | 409 | The file store has no room for the CSV. | Delete files with files_delete, or add room with files_add_storage. |

The refusals every tool can give (401 key, 402 balance, 429 limits) are on the errors page: https://conecto.chat/docs/errors.md

## Related

- [forms_create](https://conecto.chat/tools/forms/forms_create.md): Creates a form or survey with its own public page that anyone can open and answer. $0.01 a call.
- [forms_update](https://conecto.chat/tools/forms/forms_update.md): Changes a form's fields or settings; only what you pass changes. $0.01 a call.
- [forms_get](https://conecto.chat/tools/forms/forms_get.md): One form with its fields, settings, public link, whether it takes responses (and why not) and its response count. Free up to 1,000,000 reads a month.
- [forms_list](https://conecto.chat/tools/forms/forms_list.md): The business's forms, newest first, with their links, whether each takes responses, and their response counts. Free up to 1,000,000 reads a month.
- [forms_list_responses](https://conecto.chat/tools/forms/forms_list_responses.md): A form's responses, newest first, each answer with its question and a readable value. Free up to 1,000,000 reads a month.
- [forms_get_response](https://conecto.chat/tools/forms/forms_get_response.md): One response by its response_id, with every answer readable. Free up to 1,000,000 reads a month.
- [forms_summary](https://conecto.chat/tools/forms/forms_summary.md): A form's results at a glance: choice counts, rating averages, the NPS score, yes and no shares, numbers and the latest text answers. Free up to 1,000,000 reads a month.
- [forms_close](https://conecto.chat/tools/forms/forms_close.md): Stops a form taking responses; its page then says it is closed. $0.001 a call.
- [forms_open](https://conecto.chat/tools/forms/forms_open.md): Lets a closed form take responses again. $0.001 a call.
- [forms_delete](https://conecto.chat/tools/forms/forms_delete.md): Deletes a form and all its responses for good; its link stops working. $0.001 a call.
- [forms_delete_response](https://conecto.chat/tools/forms/forms_delete_response.md): Deletes one response for good, for a person who asks to be forgotten, or for spam. Free.
