# uip solution restore

> Syntax and options for `uip solution restore`, which resolves NuGet dependencies for every project in a UiPath solution.

`uip solution restore` resolves NuGet dependencies for every project in a solution using the authenticated session. It resolves dependencies in place — it does not produce a package. Run it before [`uip solution pack`](./uip-solution-pack.md).

## Synopsis

```
uip solution restore <solutionPath> [--nuget-sources-config-path <path>] [--exclude-configured-sources] [--feed-folder <name>] [--login-validity <minutes>]
```

## Arguments

| Name | Required | Purpose |
|---|---|---|
| `<solutionPath>` | yes | Path to a solution directory (containing `.uipx`) or a `.uis` file. |

## Options

| Long | Value | Default | Description |
|---|---|---|---|
| `--nuget-sources-config-path` | path | — | Path to a NuGet sources configuration file. |
| `--exclude-configured-sources` | flag | off | Resolve project dependencies only from tenant feeds and `--nuget-sources-config-path`. Drops the built-in UiPath and nuget.org feeds — a dependency not on those feeds fails to restore. |
| `--feed-folder` | name or path | — | Resolve project dependencies from this Orchestrator folder's library feed instead of every tenant feed. |
| `--login-validity` | minutes | `10` | Minimum minutes before token expiration to trigger a refresh. |

## Examples

```bash
uip solution restore ./my-solution
```

## Data shape (--output json)

```json
{
  "Code": "SolutionRestore",
  "Data": {
    "Solution": "my-solution",
    "Status": "Restored"
  }
}
```

## Exit codes

See [Exit codes](./exit-codes.md) for the shared contract.

## Related commands

- [`uip solution cleanup`](./uip-solution-cleanup.md) — remove unused items (shares the same NuGet-source flags).
- [`uip solution pack`](./uip-solution-pack.md) — package the solution after restoring.

## See also

- [Global options](./global-options.md) and [Exit codes](./exit-codes.md) — contracts shared by every verb.
