Skip to main content
POST
/
api
/
write-locks
/
account
Analyze Account Write Locks
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"
}

Authorizations

Authorization
string
header
required

Supabase JWT authentication. Used for MEV Analysis and Write Locks endpoints. Requires an active subscription (trial, active, or grace_period status).

Body

application/json
account
string
required

Account address to analyze (base58, 32-44 characters)

Example:

"FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump"

time_range
enum<string>

Query mode 1: Time range (mutually exclusive with slot or start_date/end_date)

Available options:
1h,
3h,
6h,
12h,
24h,
48h,
72h
Example:

"24h"

slot
integer

Query mode 2: Specific slot number (mutually exclusive with time_range or start_date/end_date)

Required range: x >= 1
Example:

370537741

start_date
integer

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)

Required range: x >= 1
Example:

1729368000

end_date
integer

Query mode 3: End of custom date range - Unix timestamp in seconds (requires start_date, max 7 days range)

Required range: x >= 1
Example:

1729454400

Response

Account write lock analysis results

success
boolean
Example:

true

data
object
timestamp
string<date-time>
Example:

"2025-10-02T15:30:45.123Z"