Skip to content

CSV imports

Appwrite's CSV Import feature allows you to create multiple documents in a collection by uploading a single CSV file. This is especially useful for importing existing data, seeding test environments, or migrating from other systems.

This feature is available in both Appwrite Cloud and the self-hosted version.

Prepare your collection

To get started, create a collection in your database and define its attributes. Your CSV file must match the structure of this collection.

Each column in the CSV should map to an attribute key in your collection, and each row should represent a new document.

Good to know

You can optionally include the $id column to define custom document IDs. If not provided, Appwrite will generate unique IDs for each document automatically.

For example, if your collection has the following required attributes:

  • title (string)

  • author (string)

  • year (integer)

  • available (boolean)

A valid CSV file might look like:

Text
$id,title,author,year,available
f3k91x8b2q,Harry Potter and the Sorcerer's Stone,J.K. Rowling,1997,true
mz7lq3dp5c,The Fellowship of the Ring,J.R.R. Tolkien,1954,true
x0v4p8ncq2,To Kill a Mockingbird,Harper Lee,1960,false
Note

All required attributes must be present in the CSV. Each row is validated before being imported.

Import documents from the Console

To import documents using the Appwrite Console:

  1. Go to your project -> Databases

  2. Navigate to your target Collection

  3. Click on the Import CSV button in the action area

  4. Upload a new CSV file or choose an existing file from your Storage bucket

CSV import screen

CSV import screen

CSV imports run as background tasks. The Console displays a floating progress bar while the import is active.

Additional resources