RFQ
Submit RFQ
Submit a signed order and receive an executable RFQ result
Endpoint
200 with the
same request_id and the current persisted RFQ status instead of starting a
second execution.
Headers
Bearer <session_token> from wallet auth or Privy session auth.Body Parameters
Signed order payload.
Wallet address, with or without
0x.Wager size in USDC micros.
1000000 is 1 USDC.Minimum acceptable payout multiplier, for example
1.01.One to eight legs. Each leg contains
market_id and direction.Longshot market ID from
GET /v1/markets/current or
GET /v1/markets/lookup for price legs or
GET /v1/mention-markets for mention legs.up or down.Unique nonce for replay protection.
Submission deadline in Unix milliseconds.
1 for IOC or 2 for FOK. Defaults to FOK when omitted by compatible
clients.If true, suppresses user tier and EVM address in market-maker-facing RFQs.
Base64-encoded 65-byte ECDSA signature over the binary order bytes.
Binary Signing Format
The signature is over binary bytes, not JSON.| Offset | Size | Field | Encoding |
|---|---|---|---|
| 0 | 20 | user | raw address bytes |
| 20 | 8 | wager_micros | uint64 LE |
| 28 | 4 | min_odds | uint32 LE, odds times 10000 |
| 32 | 8 | nonce | uint64 LE |
| 40 | 8 | expires_at_ms | uint64 LE |
| 48 | 1 | order_type | uint8 |
| 49 | 1 | shield_on | 0 or 1 |
| 50 | 1 | leg_count | uint8 |
| 51+ | 9*N | legs | market_id uint64 LE, direction uint8 |
0 for up and 1 for down.
min_odds is submitted in JSON as a decimal multiplier, for example 1.01.
The signed bytes use round(min_odds * 10000), so 1.01 is signed as the
little-endian uint32 value 10100.
Build the order, sign it with EIP-191 personal-sign, and encode the 65-byte
signature as base64.
Runnable Examples
The examples below submit the current BTC 5m Up RFQ. SetLONGSHOT_API_BEARER to a bearer session for the same wallet that signs the
order.
Response Fields
RFQ request ID for status lookup and cancellation.
pending, finalizing, completed, failed, cancelled, or timeout.Effective payout multiplier when the RFQ fills.
Gross payout in micros if the filled position wins, encoded as a decimal
integer string.
Failure reason when
status is failed.Number of maker quotes received for the RFQ.