Notification webhook

The Notification Webhook provides real-time updates on the status of intents submitted to the Snipe API. Notifications cover a wide range of events, from intent creation to final transaction outcomes. Below is the reference list of all possible notifications and their payloads.


Notification Types

1. Intent expired

An intent that has been pending for 48 hours without execution is marked as expired.

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_exired",
	"reason": "expired"
	"data": {}
}

2. Intent pending

A launch was detected, and the intent is now pending execution:

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_tx_pending",
	"reason": "launch_detected"
	"data": {
	    "txHash": "0x...", // hash of the pending intent tx 
	}
}

3. Intent ignored

  • Wrong status The intent was not in a pending state when the snipe happened:

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_ignored",
	"reason": "wrong_status"
	"data": {}
}
  • Buy tax too high The intent was ignored because the buy tax was too high:

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_ignored",
	"reason": "buy_tax_too_high"
	"data": {
		"max": 0.2, // max set by the user
		"actual": 0.5 // launch buy tax
	}
}
  • Sell tax too high The intent was ignored because the sell tax was too high:

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_ignored",
	"reason": "min_in_not_met"
	"data": {
		"max": 0.2, // max set by the user
		"actual": 0.5 // launch sell tax
	}
}
  • Minimum in not met Intent ignored because the minimum buy could not be met.

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_ignored",
	"reason": "min_in_too_low"
	"data": {
		"minIn": "20000000000", // max set by the user
		"actual": "4000000000", // max in at launch
	}
}
  • Liquidity minimum not met Intent is ignored because the minimum liquidity was not met.

{
	"intentId": "<id>",
	"chainId": 1,
	"type": "intent_ignored",
	"reason": "liquidity_too_low"
	"data": {
		"minLiquidity": "1000000", // max set by the user $10,000
		"actual": "500000", // liqudity at launch $5,000
	}
}

4. Successful Intent Notification

The intent was successfully executed and included in the blockchain.

{
	"intentId": "<id>",
	"type": "intent_success",
	"reason": "included_in_bundle",
	"txHash": "0x....",
	"chainId": 1,
}

5. Failure notification

The intent was selected but failed.

  • Transaction Failed Onchain: Intent was included but failed onchain (transaction reverted)

{
	"intentId": "<id>",
	"type": "intent_failure",
	"reason": "tx_failure",
	"txHash": "0x....", 
	"chainId": 1,
}
  • Transaction Not Included: Intent was sent but not included (filtered out of bundle by the block builder)

{
	"intentId": "<id>",
	"type": "intent_failure",
	"reason": "not_in_bundle",
	"txHash": "0x....", 
	"chainId": 1,
}

Last updated