---
title: "Update an API Credential"
method: PATCH
path: "/v1/organizations/{organizationId}/api-credentials/{apiCredentialId}"
tags: ["apiCredentials"]
---

# Update an API Credential

`PATCH /v1/organizations/{organizationId}/api-credentials/{apiCredentialId}`

Update the specified API Credential.

## Path parameters

- `organizationId` string, required
- `apiCredentialId` string, required

## Request body

- ApiCredentialUpdateRequestDTO
  - `name` string — Human-readable name of the API Credential.
  - `description` string — Brief description of the purpose and usage for the API Credential.
  - `enabled` boolean — If <code>true</code>, the API Credential is enabled. Otherwise, <code>false</code>.
  - `roles` ApiCredentialRolesSchema
    - `organizationRole` 'owner' | 'admin' | 'user', required — Organization-level Role assigned to the API Credential.
    - `workspaces` WorkspaceRoleSchema[] — Workspace-level Roles assigned to the API Credential.
      - `workspaceId` string, required — Unique ID of the Workspace.
      - `workspaceRole` 'owner' | 'admin' | 'user' | 'noaccess', required — Role assigned to the API Credential on the Workspace.
      - `products` ProductRoleSchema[] — Product-level Roles assigned to the API Credential for the Workspace.
        - `product` 'edge' | 'search' | 'stream' | 'lake' | 'insights', required — Product name.
        - `role` 'admin' | 'editor' | 'reader' | 'user' | 'noaccess', required — Role assigned to the API Credential on the product.
  - `ipAllowlist` string[] — Omit to leave unchanged. Pass an empty array to clear the stored IP allowlist.

## Response `204`

API Credential updated

## Other responses

- `404` — API Credential not found
- `409` — Could not update API Credential because the name is already in use
- `default` — Default error response

## Changes

- **2026-08-12** `6129323514c1` — 1 info
  - added the new `insights` enum value to the request property `roles/allOf[#/components/schemas/ApiCredentialRolesSchema]/workspaces/items/products/items/product/allOf[#/components/schemas/ProductName]/`
- **2026-04-22** `53d0b0012c3a` — 1 info
  - added the new optional request property `ipAllowlist`
- **2026-03-18** `aecdd0a7e96c` — 2 info
  - added the non-success response with the status `404`
  - added the non-success response with the status `409`
- **2026-03-13** `5289d0eff8a3` — 1 warning
  - the `name` request property's maxLength was set to `140`
- **2026-03-04** `bfa460b2aec3` — 1 breaking, 1 warning
  - added the pattern `^[A-Za-z0-9-]+$` to the request property `name`
  - the `description` request property's maxLength was set to `140`

[Full history](https://skmtc.dev/criblio/apis/cribl-cloud-public-api/changes/v1/organizations/:organizationId/api-credentials/:apiCredentialId/patch.md)

---

[API](https://skmtc.dev/criblio/apis/cribl-cloud-public-api.md) · [All operations](https://skmtc.dev/criblio/apis/cribl-cloud-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/criblio/cribl-cloud-public-api/revisions/3fc9757c4c89/schema)
