# Butterfly Delta Delta-Preflight

> Butterfly Delta Delta-Preflight is a paid API for AI agents from butterflydelta.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-13).

Validates that all explicit assumptions behind a pending autonomous action (crypto trade, transfer, deploy, etc.) are still current before the agent commits to it.

## Facts

- Endpoint: POST https://butterflydelta.com/api/agent/delta-preflight?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/butterfly-delta-delta-preflight-6751a46d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_y-Tl2i9grxE-Jb3l6PkXa

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability butterfly-delta-delta-preflight-6751a46d -d '<json body>'
```

Example prompt: Before my bot places a market buy of 0.25 BTC on Coinbase, run a Butterfly Delta preflight to make sure the order book has enough depth, estimated slippage is under 25 bps, and venue spread hasn't blown out — flag any assumptions that have gone stale since I set my policy.

## When to prefer this

Use this endpoint when an autonomous agent must validate that the real-world market conditions underpinning a crypto trading decision are still accurate before committing an irreversible or high-stakes action. It is especially valuable when the agent was configured with a policy at one point in time but may be executing later, when market conditions may have shifted. Prefer this over generic health checks when you need signed, per-venue assertions with configurable thresholds for slippage, spread, depth, and quote freshness specifically for Coinbase and Gemini spot markets.

## Known failure modes

- Quote age exceeds maxQuoteAgeSeconds — returns stale-quote flag
- Insufficient order book depth — minDepthCoveragePct threshold not met
- Cross-venue price divergence exceeds maxCrossVenueDivergenceBps
- Estimated slippage exceeds maxEstimatedSlippageBps
- Fewer than minHealthyVenues venues are responsive
- Invalid trading pair format — does not match ^[A-Za-z0-9]{2,15}[-/_]USD$
- limitPrice missing when orderType is limit
- Payment failure or missing x402 payment header ($0.01 USDC required)

## How this service works

Check which explicit assumptions became stale before an autonomous machine commits a consequential action.

## Output

Returns a structured preflight report indicating which explicit assumptions (slippage, venue spread, order book depth, quote freshness, cross-venue divergence) are still valid and which have become stale. Includes signed venue assertions for Coinbase and/or Gemini, a go/no-go recommendation, and per-check failure reasons if any threshold is breached.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "trade": {
   "type": "object",
   "required": [
    "pair"
   ],
   "properties": {
    "pair": {
     "type": "string",
     "pattern": "^[A-Za-z0-9]{2,15}[-/_]USD$",
     "description": "USD spot pair, for example BTC-USD."
    },
    "side": {
     "enum": [
      "buy",
      "sell"
     ],
     "type": "string"
    },
    "venue": {
     "enum": [
      "coinbase",
      "gemini"
     ],
     "type": "string",
     "description": "Optional execution venue. Include with side and baseSize for exact-order simulation."
    },
    "summary": {
     "type": "string",
     "maxLength": 1000
    },
    "baseSize": {
     "type": "number",
     "description": "Exact base-asset size, for example 0.25 BTC.",
     "exclusiveMinimum": 0
    },
    "deadline": {
     "type": "string",
     "maxLength": 120
    },
    "orderType": {
     "enum": [
      "market",
      "limit"
     ],
     "type": "string",
     "default": "market"
    },
    "limitPrice": {
     "type": "number",
     "description": "Required when orderType is limit.",
     "exclusiveMinimum": 0
    },
    "minHealthyVenues": {
     "type": "number",
     "default": 2,
     "maximum": 2,
     "minimum": 1
    },
    "maxVenueSpreadBps": {
     "type": "number",
     "default": 10,
     "maximum": 10000,
     "minimum": 0
    },
    "maxQuoteAgeSeconds": {
     "type": "number",
     "default": 10,
     "maximum": 3600,
     "minimum": 0
    },
    "minDepthCoveragePct": {
     "type": "number",
     "default": 100,
     "maximum": 100,
     "minimum": 0
    },
    "maxEstimatedSlippageBps": {
     "type": "number",
     "default": 25,
     "maximum": 10000,
     "minimum": 0
    },
    "maxCrossVenueDivergenceBps": {
     "type": "number",
     "default": 20,
     "maximum": 10000,
     "minimum": 0
    }
   },
   "description": "Bot-native input. Butterfly Delta expands this policy into explicit, signed venue assertions.",
   "additionalProperties": false
  },
  "action": {
   "type": "object",
   "required": [
    "kind",
    "target"
   ],
   "properties": {
    "kind": {
     "enum": [
      "trade",
      "purchase",
      "transfer",
      "deploy",
      "publish",
      "api_call",
      "execute",
      "other"
     ],
     "type": "string"
    },
    "stakes": {
     "type": "object",
     "properties": {
      "value": {
       "type": "string",
       "maxLength": 80
      },
      "currency": {
       "type": "string",
       "maxLength": 32
   
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/butterfly-delta-delta-preflight-6751a46d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from butterflydelta.com](https://www.zero.xyz/host/butterflydelta.com/llms.txt)
