curl --request GET \
--url https://api.dexploit.dev/tokens/{mint}/auditimport requests
url = "https://api.dexploit.dev/tokens/{mint}/audit"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dexploit.dev/tokens/{mint}/audit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dexploit.dev/tokens/{mint}/audit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.dexploit.dev/tokens/{mint}/audit"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.dexploit.dev/tokens/{mint}/audit")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dexploit.dev/tokens/{mint}/audit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"mint": "DMcu8numYJ9eExLoG3MUvhByPwSMLttUy2S53auk7MfE",
"indexed": true,
"mint_revoked": true,
"freeze_revoked": true,
"lp_burnt": false,
"top10_pct": {
"value": 0.184,
"status": "ready",
"computed_at": 1749312000000
},
"computed_at": 1749312000
}On-chain audit flags
On-chain authority + LP-burn rug-check signals for a token. Cheaper than /tokens/{mint} when you only need audit flags.
Public — no API key required. This is one of three intentionally keyless endpoints (along with /api/v1/stats and /api/v1/protocols).
Served by a separate service (CT106) at the root path — https://api.dexploit.dev/tokens/{mint}/audit, not under /api/v1.
Response semantics:
- Valid base58 mint, indexed →
200withindexed: trueand populated flags. - Valid base58 mint, not yet indexed →
200with the unindexed sentinel:indexed: false, all flagsnull, andtop10_pct: {value: null, status: "no_holder_data", computed_at: null}. It does not 404.
top10_pct.status is one of the values listed on Top10Pct. Everything except ready means the value is withheld, not zero.
- Malformed (non-base58) mint →
400.
curl --request GET \
--url https://api.dexploit.dev/tokens/{mint}/auditimport requests
url = "https://api.dexploit.dev/tokens/{mint}/audit"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.dexploit.dev/tokens/{mint}/audit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dexploit.dev/tokens/{mint}/audit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.dexploit.dev/tokens/{mint}/audit"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.dexploit.dev/tokens/{mint}/audit")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dexploit.dev/tokens/{mint}/audit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"mint": "DMcu8numYJ9eExLoG3MUvhByPwSMLttUy2S53auk7MfE",
"indexed": true,
"mint_revoked": true,
"freeze_revoked": true,
"lp_burnt": false,
"top10_pct": {
"value": 0.184,
"status": "ready",
"computed_at": 1749312000000
},
"computed_at": 1749312000
}Path Parameters
Response
Audit flags. indexed: false (with all-null flags) is the sentinel for a valid-but-unindexed mint — not an error.
On-chain authority and LP-burn checks for a token, served by a dedicated service (CT106) at the root path /tokens/{mint}/audit (not under /api/v1).
A valid base58 mint that has not been indexed yet still returns HTTP 200 with indexed: false and every flag/value null (the unindexed sentinel) — it does not 404. A malformed (non-base58) mint returns HTTP 400.
false when the mint is valid but not yet indexed — in that case mint_revoked, freeze_revoked, lp_burnt, and computed_at are all null and top10_pct.status is no_holder_data. true once audit data has been computed.
True if the dominant LP token is burnt/locked. null when not indexed/computed. This is the boolean roll-up; see lock for the structured signal.
Structured LP-lock signal. null when there is no structured signal yet (same meaning as a null lp_burnt). When present it distinguishes how the LP is secured and how confident we are.
Show child attributes
Show child attributes
null when not indexed/computed.
null when not indexed/computed.
Top 10 holders' share of supply, with explicit status. Always present (even when the value isn't computable yet).
Show child attributes
Show child attributes
Unix epoch seconds. null when not indexed/computed.

