> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# UploadProject

> The UploadProject command-line tool copies a FlexiCapture project from the local file system to a server, with training batch and duplicate-check options.

You can use the `UploadProject` command to upload a project from a local file system to a server. By default, the training batches are also copied.

Uploading a project to the server always changes the project's UUID. By default, the system does not check whether the project already exists there.

Add the `/CheckProjectExists` flag to get an error message when a project with the same UUID is already on the server.

To download a project from a server to a local file system, use the [DownloadProject](/flexi-capture/admin-guide/download-project) command.

## Parameters

| Parameter              | Type     | Description                                                                                                                                                         |
| :--------------------- | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `/Source`              | Required | The path to the local project. Relative local paths are not supported.                                                                                              |
| `/Target`              | Required | The path to the location on a server where the project is saved, or the full path to a local folder where the project is saved.                                     |
| `/Tenant`              | Optional | Tenant name.                                                                                                                                                        |
| `/U`                   | Optional | User name. If no user name is specified, Windows authentication is used.                                                                                            |
| `/P`                   | Optional | Password.                                                                                                                                                           |
| `/Cert`                | Optional | Certificate thumbprint used for mutual SSL authentication. This key is used to pass an encoded certificate hash for a server with Mutual SSL installed as a string. |
| `/CopyTrainingBatches` | Optional | Uploads training batches. Possible values are `All`, `LayoutOnly`, `ClassifierOnly`, or `None`. By default, this parameter is set to `All`.                         |
| `/CopyTrainingSamples` | Flag     | Uploads the contents of training batches.                                                                                                                           |
| `/CheckProjectExists`  | Flag     | Checks if a specified project already exists on the server, and if not, copies it together with its UUID. If it does, an error message is displayed.                |

## Example of use

* `UploadProject /Source="D:\Projects\FCProject" /Target="https://FCSRV" /U=user /P=password /CopyTrainingSamples` – Uploads a project and all contents of its training batches to the server.
* `UploadProject /Source="D:\Projects\FCProject" /Target="https://FCSRV" /U=user /P=password /CopyTrainingBatches=LayoutOnly /CheckProjectExists` – Uploads a project and all its field extraction training batches, and checks whether an identical project exists on the server.
