# update_deployment

`tools/call` · `POST /agent/v1/deployments:update`

Change a deployment's base URL, Fixture API URL or version. Only the fields given change. Record the version after each deploy. Refused while the product or environment is archived. Returns the deployment. Needs write access.

- Area: Catalog
- Needs the write grant. Idempotent.

## Inputs

- `product` (string, required): The product's slug, such as storefront.
- `environment` (string, required): The environment's slug, such as staging.
- `baseUrl` (nullable string): The http:// or https:// URL where the product answers in this environment, such as https://staging.acme.dev. Website and API products need one. null clears it.
- `fixtureUrl` (nullable string): The http:// or https:// URL of the deployment's Fixture API, which test runs call to create and delete test data, such as https://staging.acme.dev/fixtures. null clears it.
- `version` (nullable string): The build running in this environment, such as a git SHA or v2.4.1, up to 100 characters. null clears it.

## Request

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_deployment",
    "arguments": {
      "product": "storefront",
      "environment": "production",
      "version": "v2.4.1"
    }
  }
}
```

## HTTP request

The same call over the agent HTTP API, with an agent OAuth access token:

```bash
curl -X POST https://api.qa.clankership.net/agent/v1/deployments:update \
  -H "Authorization: Bearer $CLANKER_AGENT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "product": "storefront",
    "environment": "production",
    "version": "v2.4.1"
  }'
```
