Virtual Assets

Update virtual asset

PATCHhttps://api.firstleeward.com/v0/virtual-assets/:id

Update mutable fields (name, httpEndpoint). To disable the asset, use the dedicated POST /:id/disable endpoint.

Authorizations

Authorizationstring · headerrequired

API key as Bearer token, e.g. Bearer YOUR_API_KEY

Headers

Leeward-Versionenum<string>required

API version (YYYY-MM-DD). Available option: 2026-09-18

Path Parameters

idstring<uuid>required

Virtual asset ID

Body

application/json

namestring

Updated display name

httpEndpointstring<uri>

Update the rate endpoint URL. Only applicable for HTTP rate source. Must be HTTPS and resolve to a public address (no private IPs).

Response

200Virtual asset definition
idstring<uuid>required

Unique virtual asset identifier

symbolstringrequired

Virtual asset symbol

namestringrequired

Display name

decimalsintegerrequired

Number of decimal places for amounts

statusstringrequired

Lifecycle status. Disabled assets are excluded from balance computation.

Available options:ACTIVEDISABLED
rateSourcestringrequired

How the exchange rate (in the project billing currency) is determined for this virtual asset.

Available options:FIXEDHTTP
httpEndpointstring | nullrequired

Rate endpoint URL. Present only for HTTP rate source.

currentRatenumber | nullrequired

Latest known rate per unit, in the project billing currency. This is the rate a SETTLEMENT posting made now would be priced at. Null if no rate snapshot exists yet.

currentRateUpdatedAtstring | nullrequired

ISO 8601 timestamp of the latest rate snapshot. Null when currentRate is null.

allocatedobjectrequired

Total amount of this virtual asset allocated across all accounts in the project.

Show child attributes
amountstringrequired

Total allocated across all users in this project, in the virtual asset's native units. Decimal string padded to the asset's decimals.

valuenumber | nullrequired

Value of amount at the current rate, in the project billing currency. Null when no rate is available (e.g. disabled assets with no recent snapshot).

createdAtstringrequired

ISO 8601 creation timestamp

updatedAtstringrequired

ISO 8601 last update timestamp

400Response for status 400
Option 1 · InvalidRateSourceError
errorobjectrequired
Show child attributes
codestringrequired
messagestringrequired
detailobject | nullrequired
Option 2 · InvalidRateSourceConfigError
errorobjectrequired
Show child attributes
codestringrequired
messagestringrequired
detailobject | nullrequired
404Virtual asset not found
errorobjectrequired
Show child attributes
codestringrequired
messagestringrequired
detailobject | nullrequired