# List
**GET /shared-wallets/{walletId}/transactions**
status: stable
Lists all incoming and outgoing wallet's transactions.
## Servers
- https://localhost:8090/v2: https://localhost:8090/v2 ()
## Parameters
#### Path parameters
- **walletId** (string(hex))
#### Query parameters
- **start** (string(ISO 8601))
An optional start time in ISO 8601 date-and-time format. Basic and
extended formats are both accepted. Times can be local (with a
timezone offset) or UTC.
If both a start time and an end time are specified, then the start
time must not be later than the end time.
Example: `2008-08-08T08:08:08Z`
- **end** (string(ISO 8601))
An optional end time in ISO 8601 date-and-time format. Basic and
extended formats are both accepted. Times can be local (with a
timezone offset) or UTC.
If both a start time and an end time are specified, then the start
time must not be later than the end time.
Example: `2008-08-08T08:08:08Z`
- **order** (string)
An optional sort order.
- **max_count** (integer)
An optional maximum count.
- **minWithdrawal** (integer)
Returns only transactions that have at least one withdrawal above the given amount.
This is particularly useful when set to `1` in order to list the withdrawal history of a wallet.
- **simple-metadata** (boolean)
When present (or equal to true) in the query, the metadata format for the
transaction(s) in the output will be untyped plain json as specified in
[CIP 25](https://cips.cardano.org/cips/cip25/)
- **address** (string(base58|bech32))
An optional address.
If given, the list of transactions will be filtered
to only contain transactions that refer to this address in their inputs or outputs.
This may exclude transactions whose inputs reference outside transactions
that are not part of the transaction history of the wallet.
## Responses
### 406: Not Acceptable
#### Body Parameters: application/json (object)
- **message** (string)
May occur when providing an invalid 'Accept' header.
- **code** (string)
### 404: Not Found
#### Body Parameters: application/json (object)
- **message** (string)
May occur when a given walletId does not match with any known
wallets (because it has been deleted, or has never existed).
- **code** (string)
- **info** (object)
### 400: Bad Request
#### Body Parameters: application/json (object)
- **message** (string)
May occur when trying to withdraw less than the minimal UTxO value.
- **code** (string)
### 200: Ok
#### Headers
- **Content-Range** (string(inserted-at {range-start}-{range-end}/{total}))
#### Body Parameters: application/json (array[object])
- **id** (string(hex))
A unique identifier for this transaction
- **amount** (object)
An amount of Ada spent or received, from the perspective of the wallet.
That is, for outgoing transaction, it represents the amount of Ada consumed
as inputs including the amount of Ada spent as fees or deposits.
For incoming transaction, it represents the total amount of Ada received to
addresses that belong to the wallet.
- **fee** (object)
Coins, in Lovelace. Only relates to 'Ada'. Refer to `assets` for multi-assets wallets instead.
- **deposit_taken** (object)
Coins, in Lovelace. Only relates to 'Ada'. Refer to `assets` for multi-assets wallets instead.
- **deposit_returned** (object)
Coins, in Lovelace. Only relates to 'Ada'. Refer to `assets` for multi-assets wallets instead.
- **inserted_at** (object)
A reference to a particular time slot, and the block height at that point.
- **expires_at** (object)
A reference to a particular time slot.
- **pending_since** (object)
A reference to a particular time slot, and the block height at that point.
- **depth** (object)
if: status == in_ledger
Current depth of the transaction in the local chain
- **direction** (string)
- **inputs** (array[object])
A list of transaction inputs.
`assets` and `address` are always present for `outgoing`
transactions but generally absent for `incoming`
transactions. This information is present on the Cardano explorer,
but is not tracked by the wallet.
- **outputs** (array[object])
A list of target outputs with amounts specified.
When creating a new transaction, the wallet software ensures that all
user-specified transaction outputs have ada amounts that satisfy the ledger
minimum UTxO rule:
- If a user-specified transaction output has an ada `amount` that is
**zero**, the wallet software will automatically assign a minimal amount
of ada to the output so that it satisfies the ledger minimum UTxO rule.
- If a user-specified transaction output has an ada `amount` that is
**non-zero**, the wallet software will verify that the specified amount
is large enough to satisfy the ledger minimum UTxO rule. If the amount is
not large enough, the wallet software will return a `utxo_too_small`
error, together with a revised ada amount that does satisfy the minimum
UTxO rule.
- **collateral** (array[object])
A list of transaction inputs used for collateral.
- **collateral_outputs** (array[object])
A list of collateral return outputs with amounts specified.
- **withdrawals** (array[object])
A list of withdrawals from stake addresses.
- **status** (string)
Current transaction status.
```
*-----------*
---> | PENDING |----------------*
*-----------* |
| |
V V
*-----------* *-----------*
| |----------> EXPIRED |
| | (ttl) *-----------*
| SUBMITTED |
| <----------------*
| | |
*-----------* (rollback)
| |
(in ledger) *-----------*
| | |
*---------------> IN_LEDGER |
| |
*-----------*
```
- **metadata** (object | null)
**⚠️ WARNING ⚠️**
_Please note that metadata provided in a transaction will be
stored on the blockchain forever. Make sure not to include any sensitive data,
in particular personally identifiable information (PII)._
Extra application data attached to the transaction.
Cardano allows users and developers to embed their own
authenticated metadata when submitting transactions. Metadata can
be expressed as a JSON object with some restrictions:
1. All top-level keys must be integers between `0` and `2^64 - 1`.
2. Each metadata value is tagged with its type.
3. Strings must be at most 64 bytes when UTF-8 encoded.
4. Bytestrings are hex-encoded, with a maximum length of 64 bytes.
Metadata aren't stored as JSON on the Cardano blockchain but are
instead stored using a compact binary encoding (CBOR).
The binary encoding of metadata values supports three simple types:
* Integers in the range `-(2^64 - 1)` to `2^64 - 1`
* Strings (UTF-8 encoded)
* Bytestrings
And two compound types:
* Lists of metadata values
* Mappings from metadata values to metadata values
It is possible to transform any JSON object into this schema.
However, if your application uses floating point values, they will
need to be converted somehow, according to your
requirements. Likewise for `null` or `bool` values. When reading
metadata from chain, be aware that integers may exceed the
javascript numeric range, and may need special "bigint" parsing.
- **script_validity** (string | null)
Indicates whether the phase-2 monetary policy script (e.g. Plutus script)
used in the transaction validated or not. Validity may be null if this
transaction was from an era that doesn't support phase-2 monetary policy
scripts, or is a pending transaction (we don't know if validation passed or
failed until the transaction hits the ledger).
- **certificates** (array[object])
- **mint** (object)
- **burn** (object)
- **validity_interval** (object)
- **script_integrity** (string(bech32))
A script data integrity hash - 32 bytes
- **extra_signatures** (array[string(bech32)])
An extra signature hash - 28 bytes
[Powered by Bump.sh](https://bump.sh)