Respond to an RFQ with a Quote
Once the Last Look period expires without acceptance, the quote is automatically discarded. Only quotes in PENDING status are eligible for acceptance.
Endpoint
Section titled “Endpoint”POST /rfq/quoteServer: https://api.openfish.me
Authentication: L2 (HMAC) required
Request Body
Section titled “Request Body”Content-Type: application/json
| Field | Type | Required | Description |
|---|---|---|---|
rfqId | string (UUID) | Yes | ID of the RFQ to quote on |
price | string | Yes | Quoted price |
Sample Request Body
Section titled “Sample Request Body”{ "rfqId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "price": "0.55"}Complete Example
Section titled “Complete Example”The JSON body must be included in the L2 HMAC message exactly as sent.
curl -X POST "https://api.openfish.me/rfq/quote" \ -H "Content-Type: application/json" \ -H "OPENFISH_ADDRESS: 0x8c892c7a1a9f4f2d8cb13d2a4f7f13891c7a3693" \ -H "OPENFISH_API_KEY: 2f4d12f4-20f9-4a7f-9a5d-5d0dfe5f0101" \ -H "OPENFISH_PASSPHRASE: your-passphrase" \ -H "OPENFISH_TIMESTAMP: 1770000000" \ -H "OPENFISH_SIGNATURE: base64url-hmac-signature" \ -d '{ "rfqId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "price": "0.55" }'{ "quoteId": "f1e2d3c4-b5a6-7890-fedc-ba0987654321", "rfqId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "price": "0.55", "status": "PENDING", "lastLookSeconds": 10}Responses
Section titled “Responses”200 — Quote registered
Section titled “200 — Quote registered”| Field | Type | Description |
|---|---|---|
quoteId | string | UUID of the quote |
rfqId | string | UUID of the RFQ |
price | string | Quoted price |
status | string | "PENDING" |
lastLookSeconds | integer | Last Look window duration (10s) |
{ "quoteId": "f1e2d3c4-b5a6-7890-fedc-ba0987654321", "rfqId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "price": "0.55", "status": "PENDING", "lastLookSeconds": 10}400 — Bad Request
Section titled “400 — Bad Request”{ "error": "RFQ not found, expired, or already filled" }401 — Unauthorized
Section titled “401 — Unauthorized”{ "error": "invalid authorization" }