bull_create_rfq
Use when you want to BUY a token in size (a block trade) without moving the market price: posts a private request for quotes on Bull, a non-custodial atomic OTC settlement layer. Returns an rfqId; sellers answer with sealed quotes only you can read. Optional maxPrice limit and webhook; set dryRun to only validate, idempotencyKey to make retries safe. Not for small market swaps (use a DEX) or paying for API calls (use x402). Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"token": "<token>",
"sizeUsd": "<sizeUsd>",
"address": "<address>"
},
"name": "bull_create_rfq"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | Short note to sellers (optional). | |
| chain | No | Chain name. Default: Robinhood Chain. | |
| token | Yes | Token contract address you want to buy. | |
| dryRun | No | true = only check the request, nothing is created. Optional. | |
| symbol | No | Token symbol (optional). | |
| address | Yes | Your wallet address (the buyer or seller). Required. | |
| sizeUsd | Yes | Size in USD (minimum 5 during beta). | |
| webhook | No | https URL that receives events: quote.received, quote.revised, deal.settled (optional). | |
| maxPrice | No | Your limit: the most you will pay in total, in ETH (optional). Quotes above it are refused. | |
| signature | No | EIP-191 personal_sign of `message` from the previous response. Leave empty on the first call. | |
| timestamp | No | From the previous bull_* response. Leave empty on the first call. | |
| windowMin | No | How long the request stays open, in minutes: 15, 30, 60, 360 or 1440. Default 60. | |
| idempotencyKey | No | Unique key (8-64 characters) so a retry never creates a duplicate. Optional. |