---
title: "Update Cloud Credential"
method: PATCH
path: "/cloud-credentials/{credential_id}"
tags: ["Cloud Credentials"]
---

# Update Cloud Credential

`PATCH /cloud-credentials/{credential_id}`

## Request

- Base URL: `https://am1.portal.api.nasuni.com`
- URL: `https://am1.portal.api.nasuni.com/cloud-credentials/{credential_id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/nasuni/apis/portal-api/docs/cloud-credentials/:credential_id/patch.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `credential_id` string, uuid, required

## Request body

- union
  - AWSS3CredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'amazons3'
    - `region_code` string, nullable
    - `skip_validation` boolean
  - AWSS3GovCloudCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'amazons3gov'
    - `region_code` string, nullable
    - `skip_validation` boolean
  - S3CompatibleCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 's3_compatible'
    - `region_code` string, nullable
    - `skip_validation` boolean
  - AzureCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'azure'
    - `region_code` string, nullable
  - GCSCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'googles3'
  - IBMCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'ibmcos'
  - HCPCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'hcp'
  - ViprCredentialUpdateRequest
    - `name` string, required
    - `hostname` string
    - `username` string, required
    - `secret` string, nullable
    - `verify_certs` boolean
    - `note` string
    - `appliance_ids` string[], required
    - `cred_type` 'vipr'

## Response `202`

Credential update accepted; commands dispatched to reachable appliances

- CloudCredentialUpdateResponseDto: Response for a credential update request — split by per-appliance outcome.
  - `task_ids` string[], required: Tasks dispatched to reachable appliances — one id per appliance
  - `failed_unreachable` FailedUnreachableEdgeDto[]: Per-appliance task rows created directly in `failed` state because the appliance was unreachable at request time. The user must retry the update for those appliances once they come back online.
    - `edge_id` string, uuid, required
    - `task_id` string, uuid, required
    - `last_seen_at` string, date-time, nullable

## Other responses

- `401`: Not authenticated
- `403`: Insufficient permissions
- `422`: Validation Error
- `500`: Internal server error

---

[API](https://skmtc.dev/nasuni/apis/portal-api.md) - [All operations](https://skmtc.dev/nasuni/apis/portal-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nasuni/apis/portal-api/revisions/2a505bec6d14?raw)
