Update API key
PUT
/api/v1/organizations/{orgId}/api-keys/{id}
const url = 'http://localhost:3000/api/v1/organizations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/api-keys/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = { method: 'PUT', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"name":"Production CI/CD Key v2","description":"Used by GitHub Actions and Jenkins for deployments","permissions":["devices:read","devices:write","deployments:read"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url http://localhost:3000/api/v1/organizations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/api-keys/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "name": "Production CI/CD Key v2", "description": "Used by GitHub Actions and Jenkins for deployments", "permissions": [ "devices:read", "devices:write", "deployments:read" ] }'Updates an existing API key name, description, or permissions.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”orgId
required
string format: uuid
Organization UUID
id
required
string format: uuid
API Key UUID
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
name
Updated display name for the API key
string
Example
Production CI/CD Key v2description
Updated description of the API key purpose
string
Example
Used by GitHub Actions and Jenkins for deploymentspermissions
Updated list of permission keys for this API key
Array<string>
Example
[ "devices:read", "devices:write", "deployments:read"]Responses
Section titled “Responses”API key updated successfully
Media typeapplication/json
object
id
required
Unique API key identifier
string format: uuid
name
required
Display name for the API key
string
description
Description of the API key purpose
string
keyPrefix
required
Prefix of the API key for identification (first 8 characters)
string
permissions
required
List of permission keys granted to this API key
Array<string>
lastUsedAt
When the API key was last used
string format: date-time
expiresAt
When the API key expires
string format: date-time
createdAt
required
When the API key was created
string format: date-time
createdBy
User ID who created this API key
string format: uuid
Example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "name": "Production CI/CD Key", "description": "Used by GitHub Actions for automated deployments", "keyPrefix": "mwfm_abc", "permissions": [ "devices:read", "deployments:read", "deployments:write" ], "lastUsedAt": "2024-06-20T14:45:00Z", "expiresAt": "2025-12-31T23:59:59Z", "createdAt": "2024-01-15T10:30:00Z", "createdBy": "550e8400-e29b-41d4-a716-446655440001"}Invalid input data
Unauthorized
Forbidden - Insufficient permissions
API key not found