curl --request POST \
--url https://api.soltop.sh/api/write-locks/account \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"account": "FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump",
"time_range": "24h",
"slot": 370537741,
"start_date": 1729368000,
"end_date": 1729454400
}
'{
"success": true,
"data": {
"account": "FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump",
"query_mode": "time_range",
"query_value": "24h",
"slot_range": {
"min": 370500000,
"max": 370537741
},
"summary": {
"total_write_locks": 1250,
"total_conflicts": 45,
"unique_signers": 23,
"avg_locks_per_slot": 2.5,
"hottest_slot": 370520145,
"hottest_slot_locks": 15,
"hot_score": 7.8
},
"write_locks_timeline": [
{
"slot": 370537741,
"write_locks": 12,
"timestamp": "2025-10-01T19:22:33Z"
}
],
"conflict_timeline": [
{
"slot": 370537741,
"conflict_events": 3,
"timestamp": "2025-10-01T19:22:33Z"
}
],
"competing_transactions": [
{
"signature": "5Pj5fCupXLUePYn18JkY8SrRaWFiUctuDTRwvUy2ML9yvkENLb1QMYbcBGcBXRrSVDjp7RjUwk9a3rLC6gpvtYpZ",
"slot": 370537741,
"signer": "HwraPsoNmYpumpFnmStvzQ27Pm4U8r3M6gPD7mnk6ST6"
}
]
},
"timestamp": "2025-10-02T15:30:45.123Z"
}Analyze write lock patterns for a specific Solana account, showing timeline of write locks, conflict events, competing transactions, and hot scores. Queries can take 2-5 minutes for large time ranges. No caching - queries run fresh against ClickHouse. Requires one of three query modes: time_range, slot, or start_date/end_date.
curl --request POST \
--url https://api.soltop.sh/api/write-locks/account \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"account": "FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump",
"time_range": "24h",
"slot": 370537741,
"start_date": 1729368000,
"end_date": 1729454400
}
'{
"success": true,
"data": {
"account": "FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump",
"query_mode": "time_range",
"query_value": "24h",
"slot_range": {
"min": 370500000,
"max": 370537741
},
"summary": {
"total_write_locks": 1250,
"total_conflicts": 45,
"unique_signers": 23,
"avg_locks_per_slot": 2.5,
"hottest_slot": 370520145,
"hottest_slot_locks": 15,
"hot_score": 7.8
},
"write_locks_timeline": [
{
"slot": 370537741,
"write_locks": 12,
"timestamp": "2025-10-01T19:22:33Z"
}
],
"conflict_timeline": [
{
"slot": 370537741,
"conflict_events": 3,
"timestamp": "2025-10-01T19:22:33Z"
}
],
"competing_transactions": [
{
"signature": "5Pj5fCupXLUePYn18JkY8SrRaWFiUctuDTRwvUy2ML9yvkENLb1QMYbcBGcBXRrSVDjp7RjUwk9a3rLC6gpvtYpZ",
"slot": 370537741,
"signer": "HwraPsoNmYpumpFnmStvzQ27Pm4U8r3M6gPD7mnk6ST6"
}
]
},
"timestamp": "2025-10-02T15:30:45.123Z"
}Supabase JWT authentication. Used for MEV Analysis and Write Locks endpoints. Requires an active subscription (trial, active, or grace_period status).
Account address to analyze (base58, 32-44 characters)
^[1-9A-HJ-NP-Za-km-z]{32,44}$"FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump"
Query mode 1: Time range (mutually exclusive with slot or start_date/end_date)
1h, 3h, 6h, 12h, 24h, 48h, 72h "24h"
Query mode 2: Specific slot number (mutually exclusive with time_range or start_date/end_date)
x >= 1370537741
Query mode 3: Start of custom date range - Unix timestamp in seconds (requires end_date, mutually exclusive with time_range or slot, max 7 days)
x >= 11729368000
Query mode 3: End of custom date range - Unix timestamp in seconds (requires start_date, max 7 days range)
x >= 11729454400