# SearchTransactionsRequest
SearchTransactionsRequest is used to search for transactions matching a set of provided conditions in canonical blocks.
## Example Usage
```typescript
import { SearchTransactionsRequest } from "icpmcp-rosetta-api";
let value: SearchTransactionsRequest = {
networkIdentifier: {
blockchain: "bitcoin",
network: "mainnet",
subNetworkIdentifier: {
network: "shard 1",
metadata: {},
},
},
maxBlock: 5,
offset: 5,
limit: 5,
transactionIdentifier: {
hash: "0x2f23fd8cca835af21f3ac375bac601f97ead75f2e79143bdf71fe2c4be043e8f",
},
accountIdentifier: {
address: "0x3a065000ab4183c6bf581dc1e55a605455fc6d61",
subAccount: {
address: "0x6b175474e89094c44da98b954eedeac495271d0f",
},
},
coinIdentifier: {
identifier:
"0x2f23fd8cca835af21f3ac375bac601f97ead75f2e79143bdf71fe2c4be043e8f:1",
},
currency: {
symbol: "BTC",
decimals: 8,
metadata: {},
},
status: "reverted",
type: "transfer",
address: "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `networkIdentifier` | [models.NetworkIdentifier](../models/networkidentifier.md) | :heavy_check_mark: | The network_identifier specifies which network a particular object is associated with. | |
| `operator` | [models.Operator](../models/operator.md) | :heavy_minus_sign: | Operator is used by query-related endpoints to determine how to apply conditions. If this field is not populated, the default `and` value will be used. | |
| `maxBlock` | *number* | :heavy_minus_sign: | max_block is the largest block index to consider when searching for transactions. If this field is not populated, the current block is considered the max_block. If you do not specify a max_block, it is possible a newly synced block will interfere with paginated transaction queries (as the offset could become invalid with newly added rows). | 5 |
| `offset` | *number* | :heavy_minus_sign: | offset is the offset into the query result to start returning transactions. If any search conditions are changed, the query offset will change and you must restart your search iteration. | 5 |
| `limit` | *number* | :heavy_minus_sign: | limit is the maximum number of transactions to return in one call. The implementation may return <= limit transactions. | 5 |
| `transactionIdentifier` | [models.TransactionIdentifier](../models/transactionidentifier.md) | :heavy_minus_sign: | The transaction_identifier uniquely identifies a transaction in a particular network and block or in the mempool. | |
| `accountIdentifier` | [models.AccountIdentifier](../models/accountidentifier.md) | :heavy_minus_sign: | The account_identifier uniquely identifies an account within a network. All fields in the account_identifier are utilized to determine this uniqueness (including the metadata field, if populated). | |
| `coinIdentifier` | [models.CoinIdentifier](../models/coinidentifier.md) | :heavy_minus_sign: | CoinIdentifier uniquely identifies a Coin. | |
| `currency` | [models.Currency](../models/currency.md) | :heavy_minus_sign: | Currency is composed of a canonical Symbol and Decimals. This Decimals value is used to convert an Amount.Value from atomic units (Satoshis) to standard units (Bitcoins). | |
| `status` | *string* | :heavy_minus_sign: | status is the network-specific operation type. | reverted |
| `type` | *string* | :heavy_minus_sign: | type is the network-specific operation type. | transfer |
| `address` | *string* | :heavy_minus_sign: | address is AccountIdentifier.Address. This is used to get all transactions related to an AccountIdentifier.Address, regardless of SubAccountIdentifier. | 0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347 |
| `success` | *boolean* | :heavy_minus_sign: | success is a synthetic condition populated by parsing network-specific operation statuses (using the mapping provided in `/network/options`). | |