> ## 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.

<Note>
  Uploading a project to the server always modifies the project's UUID. By default, the system does not check whether the project being uploaded already exists on the server. To avoid this, use the `/CheckProjectExists` flag, which will display an error message when a project with the same UUID already exists on the server.
</Note>

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.
