get_transactions
Type: query
Gets transaction data from the account.
Signature
async def get_transactions(
limit: int = DEFAULT_RECORD_LIMIT,
offset: int | None = 0,
start_date: str | None = None,
end_date: str | None = None,
search: str = "",
category_ids: List[str] = [],
account_ids: List[str] = [],
tag_ids: List[str] = [],
has_attachments: bool | None = None,
has_notes: bool | None = None,
hidden_from_reports: bool | None = None,
is_split: bool | None = None,
is_recurring: bool | None = None,
imported_from_mint: bool | None = None,
synced_from_institution: bool | None = None
) -> Dict[str, Any]
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | int | No | the maximum number of transactions to download, defaults to DEFAULT_RECORD_LIMIT. |
offset | `int | None` | No |
start_date | `str | None` | No |
end_date | `str | None` | No |
search | str | No | a string to filter transactions. use empty string for all results. |
category_ids | List[str] | No | a list of category ids to filter. |
account_ids | List[str] | No | a list of account ids to filter. |
tag_ids | List[str] | No | a list of tag ids to filter. |
has_attachments | `bool | None` | No |
has_notes | `bool | None` | No |
hidden_from_reports | `bool | None` | No |
is_split | `bool | None` | No |
is_recurring | `bool | None` | No |
imported_from_mint | `bool | None` | No |
synced_from_institution | `bool | None` | No |
Example
from monarchmoney import MonarchMoney
mm = MonarchMoney()
await mm.login(email, password)
result = await mm.get_transactions()
print(result)
GraphQL Operation
Operation Name: GetTransactionsList
GraphQL Query
query GetTransactionsList($offset: Int, $limit: Int, $filters: TransactionFilterInput, $orderBy: TransactionOrdering) {
allTransactions(filters: $filters) {
totalCount
results(offset: $offset, limit: $limit, orderBy: $orderBy) {
id
...TransactionOverviewFields
__typename
}
__typename
}
transactionRules {
id
__typename
}
}
fragment TransactionOverviewFields on Transaction {
id
amount
pending
date
hideFromReports
plaidName
notes
isRecurring
reviewStatus
needsReview
attachments {
id
extension
filename
originalAssetUrl
publicId
sizeBytes
__typename
}
isSplitTransaction
createdAt
updatedAt
category {
id
name
__typename
}
merchant {
name
id
transactionsCount
__typename
}
account {
id
displayName
__typename
}
tags {
id
name
color
order
__typename
}
__typename
}
Try It Out
To test this API method locally:
- Install the package:
pip install monarchmoney - Create a Python script with the example code above
- Replace
emailandpasswordwith your Monarch Money credentials - Run the script
See the Authentication Guide for details on logging in.