Get Client Transactions
Retrieve all transaction data across all customers for your client with optional pagination.
Endpoint: GET https://api.walkerstdata.com.au/v1/transactions
Query Parameters
- page (optional): Page number for pagination (1-indexed, must be >= 1, omit for no pagination)
- count (optional): Number of transactions per page (must be >= 1, default: 20)
Request
- cURL
- JavaScript
- Python
# Get all transactions (first page, 20 results)
curl -X GET "https://api.walkerstdata.com.au/v1/transactions" \
-H "x-api-key: YOUR_API_KEY"
# Get transactions with custom pagination
curl -X GET "https://api.walkerstdata.com.au/v1/transactions?page=2&count=50" \
-H "x-api-key: YOUR_API_KEY"
// Get all transactions (default pagination)
const response = await fetch('https://api.walkerstdata.com.au/v1/transactions', {
method: 'GET',
headers: {
'x-api-key': 'YOUR_API_KEY',
},
});
// Custom pagination
const paginatedResponse = await fetch('https://api.walkerstdata.com.au/v1/transactions?page=2&count=50', {
method: 'GET',
headers: {
'x-api-key': 'YOUR_API_KEY',
},
});
const result = await response.json();
const transactions = result.data.transactions;
import requests
headers = {'x-api-key': 'YOUR_API_KEY'}
# Get all transactions (default pagination)
response = requests.get(
'https://api.walkerstdata.com.au/v1/transactions',
headers=headers
)
# Custom pagination
paginated_response = requests.get(
'https://api.walkerstdata.com.au/v1/transactions',
headers=headers,
params={'page': 2, 'count': 50}
)
result = response.json()
transactions = result['data']['transactions']
Response
{
"data": {
"transactions": [
{
"transactionDate": "2025-10-12",
"amount": 2500.0,
"description": "Mock Payment - ACME Corp",
"balance": 5500.0,
"transactionId": "de9e9dba-16e0-4710-9d7b-fe22a72c1a01",
"jobId": "550e8400-e29b-41d4-a716-446655440000",
"abn": "12345678901",
"customerId": "f9e8d7c6-b5a4-3210-9876-543210abcdef",
"clientId": "98765432108",
"level1": "Sales",
"level2": "Eftpos",
"level3": "originator_other",
"predictions": "[{\"Level\": \"level1\", \"ModelId\": \"mock_model_v1\", \"Prediction\": \"Sales\", \"Probability\": 0.85, \"Probabilities\": {\"Sales\": 0.85, \"Transport\": 0.10, \"Shopping\": 0.05}}]",
"fullEnrichmentAttempted": true
},
{
"transactionDate": "2025-10-17",
"amount": -200.0,
"description": "Mock Withdrawal - ATM",
"balance": 5300.0,
"transactionId": "769d179d-b676-4510-91cd-56e89846fa7c",
"jobId": "550e8400-e29b-41d4-a716-446655440000",
"abn": "12345678901",
"customerId": "f9e8d7c6-b5a4-3210-9876-543210abcdef",
"clientId": "98765432108",
"level1": "Cash",
"level2": "ATM Withdrawal",
"level3": "withdrawal_atm",
"predictions": "[{\"Level\": \"level1\", \"ModelId\": \"mock_model_v1\", \"Prediction\": \"Cash\", \"Probability\": 0.92, \"Probabilities\": {\"Cash\": 0.92, \"Banking\": 0.06, \"Other\": 0.02}}]",
"fullEnrichmentAttempted": true
}
],
"totalCount": 6,
"currentPage": 1,
"pageSize": 20,
"totalPages": 1
},
"message": null
}
Transaction Fields
| Field | Description |
|---|---|
| transactionDate | Date of the transaction (YYYY-MM-DD format) |
| amount | Transaction amount (positive=credit, negative=debit) |
| description | Transaction description/memo |
| balance | Account balance after transaction |
| transactionId | Unique identifier for the transaction |
| jobId | Reference to the processing job that enriched this transaction |
| abn | Australian Business Number of the customer |
| customerId | Customer identifier |
| clientId | Client identifier |
Enrichment Fields
When transactions have been processed through Cypher, they include:
| Field | Description |
|---|---|
| level1, level2, level3 | Additional transaction categories |
| predictions | Detailed prediction data with confidence scores |
| fullEnrichmentAttempted | Indicates if complete enrichment was performed |
Pagination Fields
| Field | Description |
|---|---|
| totalCount | Total number of transactions across all pages |
| currentPage | Current page number (null when not paginated) |
| pageSize | Number of transactions per page |
| totalPages | Total number of pages |
Key Features
- Client-wide Access: Retrieve transactions from all customers under your client account
- Pagination Support: Handle large datasets efficiently with page-based retrieval
- Comprehensive Data: Access both raw transaction data and AI categorizations
- Flexible Pagination: Control page size and navigate through large result sets
Use Cases
- Portfolio Analysis: Analyze transaction patterns across all customers
- Reporting Dashboards: Create client-wide financial reports and visualizations
- Performance Monitoring: Track enrichment processing across your customer base
Next Steps
With client transaction data, you can:
- Build Analytics: Create comprehensive financial analysis across your portfolio
- Generate Reports: Develop client-wide dashboards and summaries
- Export Data: Integrate transaction data into external systems
- Monitor Progress: Track enrichment status across all customers