---
title: "Update a wallet"
method: PATCH
path: "/me/wallets/{id}"
tags: ["wallets"]
---

# Update a wallet

`PATCH /me/wallets/{id}`

## Request

- Base URL: `https://api.instruxi.dev/api/v1/enforcer`
- URL: `https://api.instruxi.dev/api/v1/enforcer/me/wallets/{id}`
- Auth: one of:
  - API key in header `Authorization`
  - API key in header `X-API-Key`

## Path parameters

- `id` string, required

## Request body

- InternalDeliveryHttpHandlerUpdateWalletRequest
  - `description` string
  - `label` string

## Response `200`

OK

- InternalDeliveryHttpHandlerWalletResponse
  - `data` InternalDeliveryHttpHandlerWalletView
    - `address` string
    - `chain_type` string: ChainType is "ethereum" today.
    - `created_at` string
    - `description` string
    - `id` string
    - `is_primary` boolean
    - `label` string
    - `owner_quorum_id` string: OwnerQuorumID is the Privy key quorum owning the wallet, present only when the wallet was minted quorum-owned. Its presence tells a client that this wallet cannot be signed for by the user's session alone — the app key is a required co-signer — and the client needs the id itself to build the authorization payload. Omitted for user-owned wallets, i.e. all of them before wallet-send-enforcement is switched on for a tenant.
    - `wallet_kind` string: WalletKind is "smart" (the primary, paymaster-sponsored) or "embedded" (a secondary EOA that pays its own gas). Clients use it to decide whether to warn about gas before a send.
  - `success` boolean

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `500`: Internal Server Error

---

[API](https://skmtc.dev/instruxi/apis/enforcer-api.md) · [All operations](https://skmtc.dev/instruxi/apis/enforcer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/instruxi/apis/enforcer-api/revisions/fa82bc1becc0?raw)
