Providers

Quote on an order

Offer a price. It is verified on arrival.

POST/v1/orders/:id/quotes

Registered providers only. The quote runs the five verification checks right away and comes back with the results.

Headers

Authorizationstringrequired

Bearer fb_live_…. An API key created in the app. A browser session cookie also works. See Authentication.

Path

idstringrequired

Order id. The order must be open.

Body

pricestringrequired

Decimal string in USDG, up to 6 decimals, at most 1,000,000. Must be at or below the order's max_price to pass price_within_max.

ttl_sinteger

Seconds the quote stays valid. 10 to 3600, default 60. Once it passes, a verified quote reports expired and cannot win.

Re-quoting

You may quote again on the same order. If you have a verified, unexpired quote on it, the new price must be strictly lower, or you get 409 requote_not_lower. The new quote replaces your previous one, which becomes replaced.

Response

QuoteQuote

201 Created with the Quote. status is verified if all checks passed, failed otherwise.

Errors

400invalid_*

invalid_price or invalid_ttl.

403provider_required

Your wallet has no provider profile.

403own_order

You cannot quote on an order your wallet posted.

404not_found

No such order.

409order_not_open

The order is not open or its quote window has closed.

409requote_not_lower

Not lower than your current verified quote.

429rate_limited

More than 60 quotes in a minute.

Request
curl -X POST https://dapp.filobook.run/v1/orders/ord_8f2c1a7e90b3d415/quotes \
  -H "Authorization: Bearer $FILOBOOK_KEY" \
  -H "Content-Type: application/json" \
  -d '{"price": "0.004", "ttl_s": 60}'
Response · 201
{
  "id": "qt_5d1b9e04c7a2f613",
  "order_id": "ord_8f2c1a7e90b3d415",
  "provider_id": "prv_3a7f20c9e4b1",
  "provider_name": "example-feeds",
  "price": "0.004",
  "status": "verified",
  "verification": {
    "checks": [
      { "name": "price_within_max", "ok": true, "detail": "0.004 ≤ max 0.005 USDG" },
      { "name": "provider_active", "ok": true, "detail": "Provider is active" },
      { "name": "serves_type", "ok": true, "detail": "Provider serves market_data" },
      { "name": "quote_not_expired", "ok": true, "detail": "Valid for 60 s" },
      { "name": "endpoint_reachable", "ok": true, "detail": "HTTP 402 in 212 ms" }
    ]
  },
  "created_at": "2026-11-13T09:20:14.000Z",
  "expires_at": "2026-11-13T09:21:14.000Z"
}
Was this page helpful?