Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.chainworks.co/llms.txt

Use this file to discover all available pages before exploring further.

Monitor unlaunched EVM tokens and receive real-time signals when they become buyable. AutoSnipe watches the mempool and new blocks for liquidity events, simulates buyability, and pushes a signal to your Socket.IO connection the moment a token launches.
Socket.IO only: AutoSnipe signals are delivered as server-emitted events on your Socket.IO connection. You must be connected via Socket.IO to receive them.

Register Watch

Register a watch on a token to be notified when it becomes buyable. Endpoint: /evm/autosnipe/register
ParameterTypeRequiredDescription
chainstringYesChain identifier: eth, base, or bsc
tokenstringYesToken contract address to watch
ttlMsnumberNoWatch duration in milliseconds. Min: 3,600,000 (1h), max: 172,800,000 (2d), default: 86,400,000 (24h)
Example:
socket.emit("/evm/autosnipe/register", {
  chain: "eth",
  token: "0x1234567890abcdef1234567890abcdef12345678",
  ttlMs: 86400000, // 24 hours
});
Response:
{
  "success": true,
  "result": {
    "chain": "eth",
    "token": "0x1234567890abcdef1234567890abcdef12345678",
    "owner": "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd",
    "expiresAt": 1711065600
  }
}
Registration will be rejected if:
  • The address is not a contract
  • The token is already launched and buyable
  • The token or its owner is on the ignored addresses list (stablecoins, WETH, known MEV bots, etc.)

Remove Watch

Remove an active AutoSnipe watch. Endpoint: /evm/autosnipe/remove
ParameterTypeRequiredDescription
chainstringYesChain identifier
tokenstringYesToken contract address
Example:
socket.emit("/evm/autosnipe/remove", {
  chain: "eth",
  token: "0x1234567890abcdef1234567890abcdef12345678",
});
Response:
{
  "success": true,
  "result": {
    "chain": "eth",
    "token": "0x1234567890abcdef1234567890abcdef12345678"
  }
}

List Watches

List all active AutoSnipe watches on a chain. Endpoint: /evm/autosnipe/list
ParameterTypeRequiredDescription
chainstringYesChain identifier
Example:
socket.emit("/evm/autosnipe/list", {
  chain: "eth",
});
Response:
{
  "success": true,
  "result": [
    {
      "chain": "eth",
      "partnerId": "your-partner-id",
      "token": "0x1234567890abcdef1234567890abcdef12345678",
      "owner": "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd",
      "expiresAt": 1711065600,
      "registeredAt": 1710979200
    }
  ]
}

AutoSnipe Signal Event

When a watched token becomes buyable, you receive an autoSnipeSignal event on your Socket.IO connection. Watches are automatically removed after a signal fires.
socket.on("autoSnipeSignal", (data) => {
  console.log(data);
});
Event payload:
{
  "chain": "eth",
  "token": "0x1234567890abcdef1234567890abcdef12345678",
  "type": "block0",
  "blockNumber": "19500000",
  "taxes": {
    "buyTaxBps": 500,
    "sellTaxBps": 500
  },
  "limits": {
    "buyLowerLimit": null,
    "buyUpperLimit": "1000000000000000000",
    "sellLowerLimit": null,
    "sellUpperLimit": null
  },
  "triggeringTx": "0x02f8...",
  "timestamp": 1710979200
}
FieldTypeDescription
chainstringChain where the token launched
tokenstringToken contract address
typestringblock0 (detected in mempool before mining) or block1 (detected in mined block)
blockNumberstringBlock number at detection time
taxes.buyTaxBpsnumber | nullBuy tax in basis points (null if unknown)
taxes.sellTaxBpsnumber | nullSell tax in basis points (null if unknown)
limits.buyLowerLimitstring | nullMinimum buy amount in wei (null if none)
limits.buyUpperLimitstring | nullMaximum buy amount in wei (null if none)
limits.sellLowerLimitstring | nullMinimum sell amount in wei (null if none)
limits.sellUpperLimitstring | nullMaximum sell amount in wei (null if none)
triggeringTxstring | nullRLP-serialized transaction that triggered the launch (block0 only)
timestampnumberUnix timestamp in seconds

Signal Types

  • block0 — The token was detected as buyable from a pending mempool transaction before it was mined. This gives you the earliest possible signal. The triggeringTx field contains the serialized liquidity-adding transaction.
  • block1 — The token was detected as buyable in the first block after the liquidity transaction was mined. This is a fallback for cases where mempool detection was not possible.