Account API Reference
Authenticated methods for balances, transactions, and private trade executions.
AccountMixin
Authenticated account endpoints — balances, transactions, private trades.
This mixin is not meant to be used directly. It is mixed into
:class:~revolut_x.client.RevolutXClient.
get_account_trades
get_account_trades(symbol: str, *, limit: int = 50, cursor: str | None = None) -> tuple[list[Trade], str | None]
Retrieve private (your own) trade history for a trading pair.
Unlike public trades from :meth:get_trades, these are your
personal executed trades with full fee information.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
symbol
|
str
|
Trading pair (e.g. |
required |
limit
|
int
|
Number of trades per page (default: 50). |
50
|
cursor
|
str | None
|
Pagination cursor from a previous response. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
list[Trade]
|
A tuple of |
|
of |
str | None
|
class: |
tuple[list[Trade], str | None]
|
execution details. |
Raises:
| Type | Description |
|---|---|
AuthenticationError
|
If the client is not authenticated. |
ApiError
|
If the API returns a non-2xx response. |
Example::
>>> trades, cursor = client.get_account_trades("BTC-EUR", limit=10)
>>> for t in trades:
... print(f"{t['side']} {t['quantity']} BTC @ {t['price']} EUR")
Source code in src/revolut_x/account.py
get_balance
Retrieve the balance for a specific currency.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
currency
|
str
|
Currency symbol (e.g. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
A |
Balance
|
class: |
Balance
|
is not found on the account, returns a zero-balance entry. |
Raises:
| Type | Description |
|---|---|
AuthenticationError
|
If the client is not authenticated. |
Example::
>>> eur = client.get_balance("EUR")
>>> print(f"Available: {eur['available']} EUR")
Available: 150.00 EUR
Source code in src/revolut_x/account.py
get_balances
Retrieve current balances for all currencies on the account.
Returns:
| Type | Description |
|---|---|
list[Balance]
|
A list of :class: |
list[Balance]
|
containing |
list[Balance]
|
|
Raises:
| Type | Description |
|---|---|
AuthenticationError
|
If the client is not authenticated. |
ApiError
|
If the API returns a non-2xx response. |
Example::
>>> balances = client.get_balances()
>>> for b in balances:
... if float(b["total"]) > 0:
... print(f"{b['currency']}: {b['available']} available")
EUR: 150.00 available
BTC: 0.00050463 available
Source code in src/revolut_x/account.py
get_transactions
get_transactions(*, limit: int = 50, cursor: str | None = None) -> tuple[list[dict[str, Any]], str | None]
Retrieve account transaction history (ledger).
Transactions include deposits, withdrawals, trade settlements, and fee charges. Each entry shows the source and destination amounts and currencies.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
limit
|
int
|
Number of transactions per page (default: 50). |
50
|
cursor
|
str | None
|
Pagination cursor from a previous response. |
None
|
Returns:
| Type | Description |
|---|---|
list[dict[str, Any]]
|
A tuple of |
str | None
|
a dictionary with keys like |
tuple[list[dict[str, Any]], str | None]
|
|
tuple[list[dict[str, Any]], str | None]
|
if there are no more pages. |
Raises:
| Type | Description |
|---|---|
AuthenticationError
|
If the client is not authenticated. |
Example::
>>> txns, cursor = client.get_transactions(limit=10)
>>> for tx in txns:
... print(f"{tx['source']['currency']} -> {tx['destination']['currency']}")