> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spade.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SFTP file delivery

> Exchange files with Spade over SFTP

If you need to send large or recurring file drops to Spade, or receive files from Spade, you can use our managed SFTP server.

## Getting started

To get set up with SFTP access:

1. Generate an SSH key pair (if you don't already have one):

<CodeGroup>
  ```bash RSA theme={null}
  ssh-keygen -t rsa -C "your-org@example.com"
  ```

  ```bash ED25519 theme={null}
  ssh-keygen -t ed25519 -C "your-org@example.com"
  ```

  ```bash ECDSA theme={null}
  ssh-keygen -t ecdsa -C "your-org@example.com"
  ```
</CodeGroup>

<Note>
  Supported key types for our SFTP server are RSA, ED25519, and ECDSA (NIST P-256, P-384, or P-521). Older versions of `ssh-keygen` may default to smaller RSA key sizes — if so, use `-b` to specify the size (e.g., `ssh-keygen -t rsa -b 4096`).
</Note>

2. Send your **public key** to your Spade representative. Spade will provision an SFTP user for your organization.

3. Once provisioned, you can connect to the SFTP server.

<Note>
  Your Spade representative will confirm your username and provide any additional onboarding details specific to your integration.
</Note>

## Connection details

| Setting | Value |
| - | - |
| **Hostname** | `sftp.collector.spade.com` |
| **Port** | `22` |
| **Authentication** | SSH public key |
| **Protocol** | SFTP |

<Warning>
  Password authentication is not supported. You must use SSH key-based authentication.
</Warning>

### Development environment

A development SFTP server is available at `sftp.dev.collector.spade.com` for testing your integration before going to production. Contact your Spade representative to get set up with dev environment access.

## Directory structure

Once connected, your home directory contains two folders:

```
/
├── to_spade/       # Upload files here for Spade to process
└── from_spade/     # Download files from Spade here
```

* **`to_spade/`** — Place files here for Spade to ingest. Spade will process uploaded files and deliver any results to your `from_spade/` directory.
* **`from_spade/`** — Retrieve files that Spade delivers to you.

<Note>
  Each SFTP user is isolated to their own directory. You cannot access other customers' files.
</Note>

## Example usage

Connect and upload a file:

<CodeGroup>
  ```bash Upload theme={null}
  sftp your-username@sftp.collector.spade.com
  sftp> cd to_spade
  sftp> put your_file.csv
  sftp> ls
  your_file.csv
  sftp> exit
  ```

  ```bash Download results theme={null}
  sftp your-username@sftp.collector.spade.com
  sftp> cd from_spade
  sftp> ls
  results_2026-03-15.csv
  sftp> get results_2026-03-15.csv
  sftp> exit
  ```
</CodeGroup>

You can also use any SFTP client or library to automate file transfers.

## File formats

Contact your Spade representative for the specific file format requirements for your integration. Formats and schemas vary depending on the type of data being exchanged.

## Security

* **Encryption at rest** — All uploaded files are encrypted in storage.
* **Directory isolation** — Each customer's files are scoped to their own directory. There is no access to other customers' data.
* **SSH key authentication** — Only public key authentication is supported; passwords are not accepted.

## Questions?

Contact your Spade representative for help with SFTP setup, file formats, or troubleshooting.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.