> For the complete documentation index, see [llms.txt](https://docs.tonic.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tonic.ai/app/setting-up-your-database/file-connector.md).

# File connector

The Tonic Structural file connector allows you to use files as the source data, and to write transformed versions of the files as destination data.

You select files of the [supported types](/app/setting-up-your-database/file-connector/file-connector-file-content-types.md) from either:

* An S3 bucket
* A MinIO object store
* Google Cloud Storage (GCS)
* Azure Blob Storage
* A local file system
* For self-hosted instances, a file mount

You can also view a [video tutorial](https://youtu.be/Es_VPV9kCxs) that provides an overview of the file connector and how to manage file groups.

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Supported content and file types</strong></td><td>The file connector can transform these types of files and content.</td><td></td><td><a href="/app/setting-up-your-database/file-connector/file-connector-file-content-types.md">Supported file and content types</a></td></tr><tr><td><strong>Structural differences and limitations</strong></td><td>Features that are unavailable or work differently for the file connector.</td><td></td><td><a href="/app/setting-up-your-database/file-connector/connectors-file-tonic-differences.md">Structural differences and limitations with the file connector</a></td></tr><tr><td><strong>Configure required cloud storage permissions</strong></td><td>Set up the required permissions for Structural to read from and write to the cloud storage.</td><td></td><td><a href="/app/setting-up-your-database/file-connector/connectors-file-before-workspace.md">Before you create a file connector workspace</a></td></tr><tr><td><strong>Configure workspace file storage and output</strong></td><td>Identify where to find the source files and where to write the destination files.</td><td></td><td><a href="/app/setting-up-your-database/file-connector/file-connector-workspace-config.md">Configuring the file connector storage type and output options</a></td></tr><tr><td><strong>Manage file groups</strong></td><td>Configure the file groups. Each file group is treated as a table.</td><td></td><td><a href="/app/setting-up-your-database/file-connector/file-connector-file-groups.md">Managing file groups in a file connector workspace</a></td></tr><tr><td><strong>Download generated files</strong></td><td>For files from a local file system, download the most recently generated files.</td><td></td><td><a href="/app/setting-up-your-database/file-connector/file-connector-download-generated-files.md">Downloading generated file connector files</a></td></tr></tbody></table>


---

# 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.tonic.ai/app/setting-up-your-database/file-connector.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.
