Skip to main content
PATCH
/
api
/
v3
/
admin
/
api_keys
/
{id}
Spree Admin SDK
import { createAdminClient } from '@spree/admin-sdk'

const client = createAdminClient({
  baseUrl: 'https://your-store.com',
  secretKey: 'sk_xxx',
})

// Only `name` is editable — scopes and key_type are fixed at creation.
const key = await client.apiKeys.update('key_xxx', { name: 'CI key (renamed)' })
{
  "id": "key_gbHJdmfrXB",
  "name": "Backend integration (renamed)",
  "key_type": "secret",
  "token_prefix": "sk_anBP2apR8",
  "scopes": [
    "write_all"
  ],
  "created_at": "2026-06-17T13:36:27.283Z",
  "updated_at": "2026-06-17T13:36:27.563Z",
  "revoked_at": null,
  "last_used_at": null,
  "plaintext_token": null,
  "created_by_email": null
}

Authorizations

x-spree-api-key
string
header
required

Secret API key for admin access

Authorization
string
header
required

JWT token for admin user authentication

Headers

x-spree-api-key
string
required
Authorization
string
required

Path Parameters

id
string
required

Body

application/json
name
string
Example:

"Backend integration (renamed)"

Response

200 - application/json

API key renamed