---
title: "Add or remove accounts"
method: PUT
path: "/v2/accounts"
tags: ["Accounts"]
---

# Add or remove accounts

`PUT /v2/accounts`

Batch add, update, or remove accounts for the caller workspace. Remove returns 404 when the account id is not found in the workspace.

## Request body

- UpdateAccountsDto
  - `operations` AccountOperationDto[], required
    - `action` 'add' | 'remove' | 'update', required
    - `account` AccountDataDto, required
      - `id` string
      - `name` string
      - `type` 'eoa' | 'multisig' | 'contract' | 'custodian' | 'exchange' | 'bank' | 'defi'
      - `network` string — Network identifier, e.g. solana, stellar, eth, usd
      - `address` string
      - `category` string
      - `group_ids` string[]
      - `connection_id` string — Account connection holding this account
      - `connection_object_id` string — External object ID (e.g., wallet) from the connection provider
      - `notes` string
      - `role` string
      - `balances` AccountBalance[], required
        - `asset` string, required
        - `amount` string, required — Raw quantity reported by the provider, in asset units.
        - `usd` string, nullable — USD equivalent of `amount`. `null` when no USD price is available. For fiat accounts, equals `amount`.
        - `updated_at` string, required

## Response `200`

- UpdateAccountsResponseDto
  - `acknowledged` boolean, required

---

[API](https://skmtc.net/range/apis/range-platform-api.md) · [All operations](https://skmtc.net/range/apis/range-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/range/range-platform-api/revisions/9926df2e476d/schema)
