# Add a project variable value

Source: https://www.jawsdeploy.net/rest-api/project-variable-value-create | Section: Project Variables

Add a scoped value for a project variable.

`POST /api/project/variable/value`

Adds a new value for a project variable. Use `environmentsFilter`, `machineFilter`, `cloudTargetFilter`, and `tagFilter` to scope the value to a subset of deployment targets. Multiple values can exist for the same variable with different scopes.

## Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `variableId` | body | string | yes | ID of the project variable. |
| `theValue` | body | string | no | Value content. Optional - defaults to empty. |
| `environmentsFilter` | body | array<string> | no | Restrict to these environment IDs. |
| `machineFilter` | body | array<string> | no | Restrict to these machine IDs. |
| `cloudTargetFilter` | body | array<string> | no | Restrict to these cloud target IDs. |
| `stepFilter` | body | array<string> | no | Restrict this value to these project step IDs. IDs must belong to the variable's project. |
| `tagFilter` | body | array<object> | no | List of `{ tagIds: [...] }` sets. A target matches if it has every tag in at least one set. |

## Errors

| Status | Meaning |
|---|---|
| 400 | Invalid `variableId`, or one of the filter IDs is not visible to the project's workspace. |
| 401 | Missing or invalid Basic auth credentials, or the service account lacks the required role. |

Example request:

```
POST /api/project/variable/value

{ "variableId": "v_xyz", "theValue": "true", "environmentsFilter": ["env_prod"] }
```

Example response:

```
{ "variableValueId": "vv_1" }
```

