TraktorAPI
Get API key

Tokens

One token's page under a key: its detail and its signals.

The token routes answer with the same views Traktor's token page reads, in the v1 envelope and drawn from your plan's units.

Each answer is the view the server last built for that token, shared with every other reader of it. meta.asOf dates that build, and an answer carrying X-Market-Stale: 1 is the view kept through a rebuild that failed. chain and address are checked before the request is admitted, as is every query key a route takes: a chain or address the route cannot read, or a key it does not take, is a 400 with no X-Traktor-Cost.

GET /v1/tokens/{chain}/{address}

https://api.traktor.fun

One token's detail and candles, the token page's header and chart.

Credential
API key
REST units
5 units
  • chainenumrequiredpath

    The token's chain.

    One of: solana, base, bnb, robinhood, arc, arbitrum, ethereum

  • addressaddressrequiredpath

    The token's contract address; a Solana mint keeps its case.

  • intervalenumquery

    Candle width.

    Default 5mOne of: 1m, 5m, 15m, 1h, 4h, 12h, 1d

Limits

  • Invalid keys30 a minute, per IP

Errors

invalid_parameter, unknown_parameter, duplicate_query_parameter, route_not_found, data_unavailable, market_busy, market_fold_pending, missing_credentials, invalid_key, key_revoked, subscription_inactive, key_in_query, method_not_allowed, rate_limited, quota_exhausted, rate_limit_unavailable, internal_error

curl -s "https://api.traktor.fun/v1/tokens/base/0x4444444444444444444444444444444444444444" \
  -H "Authorization: Bearer $TRAKTOR_API_KEY"

GET /v1/tokens/{chain}/{address}/signals

https://api.traktor.fun

One token's signals, newest first.

Credential
API key
REST units
2 units
  • chainenumrequiredpath

    The token's chain.

    One of: solana, base, bnb, robinhood, arc, arbitrum, ethereum

  • addressaddressrequiredpath

    The token's contract address; a Solana mint keeps its case.

Limits

  • Invalid keys30 a minute, per IP

Errors

invalid_parameter, unknown_parameter, duplicate_query_parameter, route_not_found, data_unavailable, market_busy, market_fold_pending, missing_credentials, invalid_key, key_revoked, subscription_inactive, key_in_query, method_not_allowed, rate_limited, quota_exhausted, rate_limit_unavailable, internal_error

curl -s "https://api.traktor.fun/v1/tokens/base/0x4444444444444444444444444444444444444444/signals" \
  -H "Authorization: Bearer $TRAKTOR_API_KEY"

The detail warns before a buy.

  • token.honeypot is the reading that judged the token a honeypot, its day's distinct buyers and sellers and when (at): false once a reading judged it none, null where none has, as on every Solana token.

  • token.transferFeeBps is a Solana mint's transfer fee in basis points, the rate it charges now or a higher one it has already scheduled, taken from every buy and sale up to the mint's cap on one transfer: 0 where the mint charges none, null until it is read and on every other chain.

  • token.tax is an EVM token's own buy and sell tax, the share of a buy (buyBps) and of a sale (sellBps) its contract keeps in basis points, read by simulating a small buy and sale through its market pool, and when (at): a side the simulation could not read is null, never 0, and the whole is null where no reading of the last six hours exists, on a token whose market pool is not a v2 pool in the chain's wrapped native, and on every Solana token. The simulated buyer and seller is a contract that sells straight after its buy, so where a token taxes contracts or a quick resale more, the reading is what that contract would pay.

  • token.safety is what three outside token checkers last said of an EVM token, the flags they raised and when (at): goplus_honeypot, goplus_airdrop_scam and goplus_fake_token are the first checker's flags for a honeypot, an airdrop scam and a copy of another token, and honeypot_is_simulation is a sale the second checker's simulation could not make, asked only where the first raised none, on the chains the second serves. On the EVM chains it does not serve, the third is asked about a token viewed lately that the first raised none on, when Traktor has its budget: serialized_audit_simulation is a sale its simulation could not make, and serialized_audit_sell_block a contract it finds can stop a sale. An empty flags is a reading that raised none, served for a day; a reading that raised a flag is served until a newer one replaces it, however old, so at can be days back on a token nobody has traded or viewed since; the whole is null where no reading raised a flag and none answered in the last day, and on every Solana token.

  • token.goplus is the first checker's reading of the token's contract, on every chain, and when it was read (at), served however old: checks holds each check it answered, true or false, a check it left out absent, never false (on the EVM chains honeypot, cannotBuy, cannotSellAll, airdropScam, fakeToken, creatorHoneypots, pausable, blacklist, whitelist, cooldown, antiWhale, antiWhaleChangeable, taxChangeable, walletTax, mintable, balanceChangeable, hiddenOwner, reclaimOwner, selfDestruct, externalCall, proxy, closedSource and ownerRenounced; on Solana nonTransferable, freezable, taxChangeable, transferHook, hookChangeable, mintable, balanceChangeable, closable and metadataChangeable; on both trusted, present only as true). A true is a risk but for ownerRenounced and trusted. buyTax, sellTax, transferTax and creatorShare are shares of 0 to 1, lpLockedShare the share of its pools' liquidity tokens held locked or burned and holderCount its count, each null where it gave none or, for lpLockedShare, did not say a holder's lock or a locked holder's share. The whole is null where that checker has not read the token or held no reading when asked.

  • token.security is Traktor's own token checker's last scan, on every chain: a verdict (benign, warning, malicious or spam, null where too little was read to judge), a score from 0 to 1, each check it read under its feature id with a finding (yes, no, or possible for a power the code holds that no simulation proved), a severity and when it was read (at), the fees a simulated trade measured in basis points and the limits it read in whole tokens (false where the contract holds none). A check it did not read is absent, never no, and a verdict is benign only where a simulated sale went through or the token is on the trusted list. A scan that found harm, or in which a simulated sale failed or found the token unsellable whatever its verdict (a trusted token's among them), is served until the next one, however old; any other for a day; the whole is null where the token has not been scanned or its last clean scan is older. Its fees are served for six hours, as token.tax is, then null whatever the verdict.

  • token.codexRisk is the market data provider's last risk read of the token, on every chain it reads, Solana's included: its verdict (SCAM, HIGH_RISK, CAUTION, NEUTRAL, VERIFIED or VERIFIED_CONTESTED, null where it sent none or one not listed here), the reason codes it cited (reasons, as it spells them, PROOF_HONEYPOT_SIM or TAX_SELL_HIGH for example, a code added later kept) and when Traktor stored it (at), served however old. SCAM rests on a proof or a reviewer's label and HIGH_RISK and CAUTION on the provider's score; NEUTRAL is not clean, as it can stand on a token the provider ran no sale check on. The whole is null where the provider has not read the token or sent no risk read, never a clean one.

  • token.quoteControls is what the issuer of a Solana token's quote can do to it, where the token's market pool is quoted in a coin that is not SOL, USDC or USDT: the quote's mint and symbol (null where its own record names none), whether the mint can be paused (pausable) and is paused now (paused), a transfer fee its authority can change (feeChangeable) and the fee charged in basis points (feeBps, the rate in force or a higher one already scheduled, null where unread), a permanent delegate that can move or burn any holder's balance (permanentDelegate), and when the mint was read so (at). Traktor reads the quote's mint once a minute and writes the reading onto the tokens quoted in it that it watches, the active ones and up to 2,000 more of those traded in the last day, at least hourly; the detail serves it for three hours from that write while the market pool is still quoted in it. The whole is null where the quote grants none of these powers, where no write of the last three hours stands, and on every other chain; only the market pool's quote is read, so null says nothing of the token's other pools. A quote paused now, or keeping 10% or more of a transfer, holds a buy on the token page for the trader's word.

A token's signals carry the wallet behind each trade, and that wallet's year and win rate, as the signal feed's do.

It answers with what GET /v1/public/search answers, the same rows from the same shared answers, in the v1 envelope and drawn from your plan's units instead of the keyless route's budget per IP. An exact address the index misses is asked of an outside token directory on your account's own allowance, at most 10 lookups a minute on each API server, inside the 30 a minute every reader of that server shares and the 30 of its 40 directory reads a minute that its open pages share with search, and within the 50 a minute every server spends together; past any of them, or when the lookup fails, external.tokens is null and the answer is kept by no cache. A q that is neither a ticker nor an address is 400 invalid_parameter, refused before admission. An account holds at most 4 search builds at once of the pool the keyless route shares, so past that, or when every build is taken, the answer is 503 market_busy, and its unit comes back.

When a read fails

A view still being built, or one that failed with nothing kept, is 503 data_unavailable, with details.reason warming or unavailable. A batch of trades still folding into the view is 503 market_fold_pending, and market reads too busy to take another are 503 market_busy. Each carries Retry-After, and its units come back: X-Traktor-Cost: 0.

    Tokens · Traktor API