The File Upload source lets you upload entity data directly into a connector. The uploaded file type must match the file type configured in the connector settings.
Note: You can also upload entity data via the Entity Upload tool in the Knowledge Graph (Excel and CSV only). This is a separate process from the Connectors framework. See the Upload Entities to Yext help article for more information.
Setting Up a File Upload Connector
Step 1: Create the Connector
- Click Knowledge Graph in the navigation bar, then click Connectors.
- Click + Add Connector.
- Click File Upload under Generic Sources.
- Click Upload File and select your file.
- Select the type of file you are uploading via the Connector.
Step 2: Configure File Settings
Configure settings based on your file type. For full details on each setting and what the options mean, see the File Settings section below.
Excel: Choose which sheets to extract, how to merge multiple sheets, and whether the first row is a header row.
CSV: Choose your delimiter and whether the first row is a header row.
JSON: Specify whether the file contains one entity or many. If many, provide the JMESPath expression for the entity container.
Step 3: Specify Selectors
If you’ve already uploaded a file and want to select the columns of your entire file, we recommend clicking + Add Default Selectors. This will add selectors for all columns of your uploaded file.
Note: If you upload a new file and want to regenerate Default Selectors, you can use the Combo Button to “Delete All Selectors” and then you will be able to re-add all “Default Selectors” which will be detected using the currently uploaded file.
To manually add a selector, click + Add Selector to get started.
Enter the Header, which is simply the display name of the Column Header in your data preview table.
Excel and CSV: Has Header Row
| Method | Details |
|---|---|
| Header Value | Use the exact value of a cell in the first row to identify the column. Note that when using default selectors, the Header Value method is used. |
| Numeric Index | Use a zero-based numeric index (e.g., 0 for the first column) |
Whichever method you choose, the result is the same. In both cases, since you’ve specified that a header row is present, the first row of data will not be extracted. Additionally, you can choose to select some columns with Numeric Indices, and some with Header Values.
Note: If your sheet contains more than one column with the same header value (e.g., two columns are called “Keywords”), you will receive an error that duplicate headers exist. In this case, you should Set Has Header to
falseand delete the first row (which was your header row) using the Filter Rows transform.
Excel: Does NOT Have Header Row
If your file does not contain a header row, you have two ways in which you can select columns.
| Method | Details |
|---|---|
| Numeric Index | Zero-based numeric index (e.g., 0 for the first column) |
| Alphanumeric Index | Letter-based index (A, B, C, etc.). Default selectors use the Alphanumeric method. Both methods can be mixed. |
Whichever method you choose, the result is the same. In both cases, since you’ve specified that a header row is NOT present, the first row of data will be extracted. Additionally, you can choose to select some columns with Numeric Indices, and some with Alphanumeric Indices.
CSV: Does NOT Have Header Row
If your file does not contain a header row, you must select columns using a numeric index of the column. Your first column should be specified using an index of 0.
Note that when using default selectors, the Alphanumeric method is used.
JSON Files
The next step is to specify which pieces of that JSON file you want to map to fields on entities.
Selectors are specified using the JMES Path for the specific element you want to extract from your JSON file response.
Step 4: Add Transforms (Optional)
Optionally add transforms to clean up or manipulate data before loading it into Yext. For a full list of available transforms, see Connector Transforms.
Step 5: Map Data
- Choose the entity type to map to.
- Map each column to a field on the selected entity type.
- Review the Validation column for any errors or warnings.
- Click Save, or Save & Run Now to run the connector on the uploaded file. You should now see entities added to the Knowledge Graph.
Step 6: Manage the Connector
Running a file: From the Connector Overview screen or within the configuration, click the upload button in the upper right to select a file from your local machine. You can then run it in Default Mode or choose a different run mode via the combo button.
Re-running a previous file: You can re-run a previously run file by navigating to the row of the run in the Activity Log Table > Clicking the Download Results combo button > and choosing Run on Source File. You can additionally choose to download the file that the run executed.
Uploading a new file to the configuration: From within the Connector Configuration, you can upload a new file at any point. The file that you see populating the preview table will be the file that was most recently uploaded. Once you land on the mapping stage, you can again choose to either Save your Connector (and if you’ve uploaded a new file, that file will continue to populate the table until another file is uploaded or run), or Save and Run the Connector.
Supported File Types
| Format | Accepted Extensions |
|---|---|
| Excel |
.xlsx, .xls
|
| CSV |
.csv, .tsv, .psv, .txt, or any delimited file |
| JSON | .json |
File Settings
Excel
Extract Sheets
Specify which sheets to extract from the workbook:
| Option | Behavior |
|---|---|
| Entire Workbook | Extracts all sheets |
| Specific Sheet(s) | Enter individual sheet numbers or a range. The first sheet is 0. Use commas for individual sheets and dashes for inclusive ranges. For example, 0,2-5,7-9 extracts sheets 0, 2, 3, 4, 5, 7, 8, and 9. |
Merge Sheets
If extracting multiple sheets, specify how to merge them. Leave as default if extracting a single sheet.
| Option | Behavior | Best For |
|---|---|---|
| Horizontally | Each new sheet's columns are appended to the right of the previous sheet | Same entities across sheets, with additional fields per entity (row 2 in Sheet 1 = same entity as row 2 in Sheet 2) |
| Vertically | Each new sheet's rows are appended below the previous sheet | Different sets of entities across sheets |
Has Header Row
| Option | Behavior |
|---|---|
| On | The first row is treated as column headers (e.g., Name, Address, Description) and excluded from data processing |
| Off | The first row is treated as data and included in processing |
CSV (or Any Delimited File)
Delimiter
| Option | Behavior |
|---|---|
| Comma (default) | Columns are delimited by a comma |
| Custom | Specify a different delimiter character. Rows are always delimited by a new line. |
Has Header Row: Same behavior as described for Excel above.
JSON
When uploading a JSON file, specify whether the file contains data for a single entity or multiple entities.
If the file contains a list of entities, provide the JMESPath expression for the entity container so the connector can identify and extract the nested data for each entity.
Limitations
- Invisible sheets are skipped and will not be processed.
- Formulas are not executed. If a cell contains
=A1+B2, the connector will read it as the literal string=A1+B2, not the computed value.