Skip to main content
POST
/
mev
/
validate-competition
Validate MEV Competition
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."
}

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
wallet_a
string
required

First wallet address (base58)

Example:

"FnmStvzQ27Pm4U8r3M6gPD7mnk6ST6HwraPsoNmYpump"

wallet_b
string
required

Second wallet address to compare (base58)

Example:

"HwraPsoNmYpumpFnmStvzQ27Pm4U8r3M6gPD7mnk6ST6"

time_range_days
integer
default:7

Number of days to analyze

Required range: 1 <= x <= 30
Example:

7

slot_window
integer
default:4

Slot window for proximity (±N slots)

Required range: x >= 1
Example:

4

page
integer
default:1

Page number for incident details

Required range: x >= 1
Example:

1

limit
integer
default:100

Results per page

Required range: 1 <= x <= 500
Example:

100

Response

Job submitted or cached result

Job queued response

success
boolean
Example:

true

jobId
string
Example:

"xyz789abc123"

status
string
Example:

"queued"

message
string
Example:

"Analysis started. Poll /mev/job-status/:jobId for updates."