curl --request POST \
--url https://api.soltop.sh/mev/validate-competition \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"wallet_a": "FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump",
"wallet_b": "HwraPsoNmYpumpFnmStvzQ27Pm4U8r3M6gPD7mnk6ST6",
"time_range_days": 7,
"slot_window": 4,
"page": 1,
"limit": 100
}
'{
"success": true,
"jobId": "xyz789abc123",
"status": "queued",
"message": "Analysis started. Poll /mev/job-status/:jobId for updates."
}Compare two specific wallets to generate detailed MEV interaction statistics (how often wallet B frontruns/backruns wallet A). Submits an async job and returns a jobId. Poll /mev/job-status/:jobId for results. Page 1 results are cached for 5 minutes.
curl --request POST \
--url https://api.soltop.sh/mev/validate-competition \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"wallet_a": "FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump",
"wallet_b": "HwraPsoNmYpumpFnmStvzQ27Pm4U8r3M6gPD7mnk6ST6",
"time_range_days": 7,
"slot_window": 4,
"page": 1,
"limit": 100
}
'{
"success": true,
"jobId": "xyz789abc123",
"status": "queued",
"message": "Analysis started. Poll /mev/job-status/:jobId for updates."
}Supabase JWT authentication. Used for MEV Analysis and Write Locks endpoints. Requires an active subscription (trial, active, or grace_period status).
First wallet address (base58)
^[1-9A-HJ-NP-Za-km-z]{32,44}$"FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump"
Second wallet address to compare (base58)
^[1-9A-HJ-NP-Za-km-z]{32,44}$"HwraPsoNmYpumpFnmStvzQ27Pm4U8r3M6gPD7mnk6ST6"
Number of days to analyze
1 <= x <= 307
Slot window for proximity (±N slots)
x >= 14
Page number for incident details
x >= 11
Results per page
1 <= x <= 500100