# system.formats

A read-only registry of the server's data formats. Its names are the canonical snake_case spellings used by FORMAT.

## Columns

| Name                         | Type   | Meaning                               |
| ---------------------------- | ------ | ------------------------------------- |
| name                         | String | Registered format name.               |
| is_input                     | UInt8  | 1 when an input decoder is available. |
| is_output                    | UInt8  | 1 when a result encoder is available. |
| supports_parallel_parsing    | UInt8  | Currently 0 for every format.         |
| supports_parallel_formatting | UInt8  | Currently 0 for every format.         |

Selecting an unsupported direction returns a format-direction error. ASCII case is ignored when resolving a name, but CamelCase spellings are not aliases.

## Example

```sql
SELECT name, is_input, is_output
FROM system.formats
WHERE name IN ('csv', 'form', 'null_output')
ORDER BY name
FORMAT csv;
```

```text
"csv",1,1
"form",1,0
"null_output",0,1
```

Use the system qualifier through a server interface. See [formats](https://coordinatordb.com/docs/reference/formats) for layouts, type mappings and settings.
