---
title: "Properties"
description: "All data source properties — keys in YAML, columns in tabular sources"
url: "https://docs.justcat.it/reference/data-sources/properties/"
---
# Properties


These properties apply wherever the definition lives — inline in the project file, in other YAML files, or in any provider that returns rows (Excel, a database query, …); sources can be combined. In YAML they are keys; in a tabular source they are the columns of one row. See [Lists](https://docs.justcat.it/reference/project-file/lists/ "Lists — implicit and explicit").

## Properties

| Property | Also accepted as | Required | Meaning |
|---|---|---|---|
| `Name` | `Data source name` | yes | The name other definitions use to refer to this data source |
| `Provider` | — | yes | Which provider CAT opens the data with, as name and version — `SqlServer@2`, `Excel@1`, `Postgres@1`. See [Providers](https://docs.justcat.it/reference/data-sources/providers/overview/ "Providers") |
| `Connection string` | `File path`, `Directory`, `Folder` — see below | the provider decides | Everything the provider needs to reach the data: a connection string for a database, a path for a file-based provider |
| `Technology` | — | no | What the system behind the connection is — `AzureSqlDatabase`, `PowerBIDesktop`, `Snowflake`. Read by CAT Studio only. See [Technologies](https://docs.justcat.it/reference/data-sources/technologies/ "Technologies") |

Property names are matched by synonym and are not case sensitive, so `connection_string` and `ConnectionString` address the same property. See [Naming conventions](https://docs.justcat.it/reference/project-file/naming-conventions/ "Naming conventions").

`%NAME%` in any value is replaced with the value of the environment variable `NAME`. See [Environment variables](https://docs.justcat.it/reference/project-file/environment-variables/ "Environment variables").

```yaml
Data sources:
- Name: FlightsSystem
  Provider: SqlServer@2
  Connection string: "%FLIGHTS_CONNECTION_STRING%"
```

## Name

The name is what a [test](https://docs.justcat.it/reference/tests/properties/ "Test properties") means by `First data source` and `Second data source`, and what a [query](https://docs.justcat.it/reference/queries/properties/ "Query properties") means by `Data source`. The match ignores case.

When a definition names a data source that does not exist, CAT raises an error and lists every data source name the project did load, so the typo is visible next to the alternatives.

Names are not checked for duplicates. Two data sources under the same name are both loaded, and which one a test ends up using is not defined — keep them distinct.

## Connection string

`Connection string` is the one slot every provider reads, whatever it holds. A database provider takes a connection string out of it, a file-based provider takes a path, a folder-based provider takes a directory.

Because "connection string" reads oddly for a file, some providers accept an alias for the same slot:

| Provider | Also accepted as |
|---|---|
| `Excel@1`, `ExcelOleDB@1`, `PowerBI@1`, `PowerBI@2`, `Yaml@1` | `File path` |
| `Csv@1`, `CsvOleDB@1` | `Directory`, `Folder` |

Whether a value has to be there is the provider's decision, not the definition's: CAT does not reject a data source that carries no connection string. Every provider except two then fails without one — `Yaml@1` falls back to `Data.yaml`, and `CsvOleDB@1` falls back to the working directory.

## Provider settings

A data source definition is not limited to the four properties above. Every other property on the definition is handed to the provider as one of its settings, so a data source carries whatever its provider understands — a CSV delimiter, a text encoding, a driver-specific option.

```yaml
Data sources:
- Name: FlightsExport
  Provider: Csv@1
  Folder: ./exports
  Encoding: windows-1250
```

Which settings a provider accepts, what it expects in the connection string, and what it needs installed on the machine are documented on that provider's own page. See [Providers](https://docs.justcat.it/reference/data-sources/providers/overview/ "Providers").

> **🙀:** Keep passwords out of the file — see [Work with passwords](https://docs.justcat.it/how-to-guides/organize-and-run-tests/work-with-secrets/ "Work with passwords").



