Ingest your data into Tinybird

Tinybird allows you to ingest your data from a variety of sources, then create Tinybird Data Sources that can be queried, published, materialized, and more.

Get started

Pick your Data Source, get connected, and start ingesting fast!

Create your schema

Schemas are defined using a specific file type: .datasource files. Read more about them in the .datasource file docs.

You can choose to define the schema first or send send data straight away and let Tinybird infer the schema (it's smart like that).

Define the schema yourself

If you want to define your schema first, use one of the following methods:

Option 1: Create an empty Data Source in the UI

On the left-hand nav, select the + icon then "Data Source". Select the "Write schema" option and review the .datasource file that's presented. Update the generated parameters to match your desired schema.

Make sure you understand the definition and syntax for the schema, JSONPaths, engine, partition key, sorting key(s), and TTL - these are all essential for efficient data operations later down the line.

The input here is responsive, so if you change the engine, the UI automatically updates with any other definitions you need to provide. Select "Next", review your column names and types, rename the Data Source, and when you're happy with it, select "Create Data Source".

Option 2: Upload a .datasource file with the desired schema

Alternatively, you can define your schema locally in a .datasource file.

Drag and drop the file onto the UI and Tinybird will prompt you to import the resource.

You can also select the + icon followed by "Write schema", drag and drop the file onto the modal, and continue editing in the UI.

Option 3: Use the Data Sources API

Option 4: Use the Tinybird CLI

Send data and use inferred schema

If you want to send data straight away and let Tinybird infer the schema, then use one of the many Connectors, upload a CSV, NDJSON, or Parquet file, or send data to the Events API.

To use the Events API to infer the schema, send a single event over the API and allow Tinybird to create the schema for you automatically. If the schema is incorrect, go to the Data Source schema page in the UI and download the schema as a .datasource file. Edit the file to adjust the schema if required, then drag & drop the file back on to the UI. You cannot override an existing Data Source, so you will have to delete the existing one or rename the new Data Source.

Supported data types, file types, and compression formats

See Concepts > Data Sources for more information on supported types and formats.

Update your schema

Realized you have the wrong schema for your Data Source? If your data does not match the schema, it will end up in the quarantine Data Source. You may also want to change your schema for optimization purposes. In both cases, read the Iterate a Data Source guide.

Limits

Check the limits page for limits on ingestion, queries, API Endpoints, and more.

Looking for inspiration?

If you're new to Tinybird and looking to learn a simple flow of ingest data > query it > publish an API Endpoint, check out our quick start!