Skip to main content
PATCH
Update source
A source has at most one ledger account. The response returns it in detail.ledger_account_id. The organization, credentials and import identity of a source cannot be changed. On a Rain card, a non-null legal_entity_id moves the card and its transactions without journal entries to that legal entity. Transactions with journal entries stay with their legal entity. Send it with only an optional ledger_account_id. In a Rain card legal entity move, null returns 400, and omitting it preserves the current assignment.

Authorizations

X-API-Key
string
header
required

Your organization API key. See Authentication.

Headers

Idempotency-Key
string

Optional retry key. Check X-Idempotency-Applied before relying on replay protection.

Required string length: 1 - 255

Path Parameters

source_id
string
required

ID of the source.

Minimum string length: 1

Body

application/json

Provide at least one field. Omit a field to leave it unchanged.

name
string

Rename wallet, exchange, Plaid, manual-bank or Niural sources. Other source types do not support renaming. An unsupported field returns 422 without applying the update.

status
enum<string>

Source lifecycle. Supported by wallet, exchange, Plaid and manual-bank sources. Other source types return HTTP 422. A wallet accepts pending_setup; a wallet with a legal entity becomes active instead, and an internal wallet without a legal entity returns HTTP 422. For Plaid, prefer setup_status to change setup independently of archive state. For compatibility, status: pending_setup also changes Plaid setup, and status: active changes setup on an unarchived account or restores an archived account. Do not combine status and setup_status.

Available options:
active,
archived,
pending_setup
setup_status
enum<string>

Plaid account setup state. Leaves archive state unchanged, including on an archived account. Cannot be sent with status. Other source types return 422. Read the stored setup state from detail.setup_status.

Available options:
active,
pending_setup

Prefixed le_ id, or null to clear.

ledger_account_id
string | null

Ledger account (lac_…). Send null to clear it; omit to keep it. In a Rain card legal entity move, null returns 400, and omitting it preserves the current assignment. Niural sources return HTTP 422.

tag_ids
string[] | null

Replaces the tags (tag_…). [] clears them; omit to keep them. You cannot send it with add_tag_ids or remove_tag_ids. Wallet, exchange, Plaid and manual-bank sources only; other sources return HTTP 422.

add_tag_ids
string[]

Tags to add (tag_…). Wallet, exchange, Plaid and manual-bank sources only; other sources return HTTP 422.

remove_tag_ids
string[]

Tags to remove (tag_…). Wallet, exchange, Plaid and manual-bank sources only; other sources return HTTP 422.

allow_nft_import
boolean

Enable or disable NFT import for a wallet. Other source types do not support this field. An unsupported field returns 422 without applying the update.

group_id
string | null

Prefixed sgp_ id of a source group, or null to remove the source from its group.

wallet_type
enum<string>

Wallet or Niural source only. Internal or external ownership. An internal wallet needs a legal entity.

Available options:
internal,
external
address
string

Wallet or Niural source only. Replaces the stored address. Existing transactions are not imported again.

Required string length: 1 - 512
addresses
string[]

Wallet only. Replaces the additional addresses (Canton parties).

Maximum array length: 1000
Required string length: 1 - 512
consolidate_fees
boolean

Wallet only. Consolidates the fees of a transaction.

track_solana_rewards
boolean

Wallet only. Tracks staking rewards; applies only to an internal Solana wallet.

chain
string

Niural source only. A wallet chain cannot change and returns 422.

Required string length: 1 - 64
provider_tags
string[]

Niural source only. Replaces the Niural text tags. Not tag ids.

Maximum array length: 100
Required string length: 1 - 256

Response

The request succeeded.

data
object
required