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

# Update a cluster with the APC API

<Note>
  The examples on this page show common ways to use the APC API — they're not a complete API reference. For the full, interactive API documentation for your installation, including every available query, mutation, and type, go to `https://houston.<your-base-domain>/v1`, and click on the **Docs** tab. See [Develop and test APC API queries](/docs/astro-private-cloud/v-2-x/houston-api-develop-test) for more on using the built-in GraphQL explorer.
</Note>

A user with permission to update clusters can change a cluster's status manually. The `statusReason` argument accepts a JSON object whose shape isn't enforced by the schema, but the APC API itself writes the value the deployment orchestrator returns in its `/metadata` response when reconciling. To stay consistent, use the same shape the APC API uses or include a descriptive `message` field.

```graphql wrap theme={null}
mutation {
  updateCluster(
    id: "<cluster-id>"
    status: INACTIVE
    statusReason: { message: "Maintenance window — cluster offline for upgrades" }
  ) {
    id
    status
    statusReason
  }
}
```

For status changes, supply `id` (required), `status`, and `statusReason`. The `updateCluster` mutation also accepts `name` and `deploymentsConfigOverride` for non-status changes; see [Update data plane cluster configurations](/docs/astro-private-cloud/v-2-x/override-data-plane-cluster) for those workflows.

<Note>
  The APC API blocks configuration updates (`deploymentsConfigOverride`, `name`) while the cluster status is `INACTIVE` and returns the error `This operation is not allowed as the cluster is not active.` Status itself can still be updated in any state.
</Note>

To manually restore a cluster to `ACTIVE` after confirming it's healthy:

```graphql wrap theme={null}
mutation {
  updateCluster(
    id: "<cluster-id>"
    status: ACTIVE
    statusReason: { message: "Manually verified healthy" }
  ) {
    id
    status
  }
}
```

For querying cluster status and troubleshooting unhealthy clusters, see [Manage cluster status](/docs/astro-private-cloud/v-2-x/cluster-status-management). For updating a cluster's `deploymentsConfigOverride`, see [Update data plane cluster configurations](/docs/astro-private-cloud/v-2-x/override-data-plane-cluster).
