Copy as Markdown[View as Markdown](/docs/sdk/functions/addFileToDataProduct.md)

***

# Function: addFileToDataProduct()

> **addFileToDataProduct**(`directory`): (`id`, `file`, `version`?) => `Promise`<`void`>

Defined in: data-products.ts:264

Add a file to a data product by its id.

Optionally specify a version to add a file to a specific version of the data product.

## Parameters[​](#parameters "Direct link to Parameters")

| Parameter   | Type     |
| ----------- | -------- |
| `directory` | `string` |

## Returns[​](#returns "Direct link to Returns")

`Function`

### Parameters[​](#parameters-1 "Direct link to Parameters")

| Parameter        | Type                                           |
| ---------------- | ---------------------------------------------- |
| `id`             | `string`                                       |
| `file`           | { `content`: `string`; `fileName`: `string`; } |
| `file.content`   | `string`                                       |
| `file.fileName`? | `string`                                       |
| `version`?       | `string`                                       |

### Returns[​](#returns-1 "Direct link to Returns")

`Promise`<`void`>

## Example[​](#example "Direct link to Example")

```
import utils from '@eventcatalog/utils';

const { addFileToDataProduct } = utils('/path/to/eventcatalog');

// adds a file to the latest CustomerDataProduct data product
await addFileToDataProduct('CustomerDataProduct', { content: 'Hello world', fileName: 'hello.txt' });

// adds a file to a specific version of the CustomerDataProduct data product
await addFileToDataProduct('CustomerDataProduct', { content: 'Hello world', fileName: 'hello.txt' }, '0.0.1');
```
