Skip to content
TradeTransactionsDocsTwitterSupport

Backed by

Paradigm

Paradigm

INTEGRATE API

TradeTransactionsDocsTwitterSupport

INTEGRATE

Backed by

Paradigm

Paradigm

Create an order

Create an order

Create an order with the quote_id returned by get a quote and a to_address on the destination chain. Optionally provide a refund_address; otherwise, refunds go to the original sender.

The response includes deposit_address, from_amount, and deposit_deadline. Send the specified amount to that address before the deadline to begin execution.

Repeating the request with the same quote_id and addresses returns the existing order. Changing the addresses after the quote has been used is rejected. No separate idempotency key is required.

POST/orderOpenAPI ↗

Try it out

Production
https://api.rift.trade
Request body

Request example

const response = await fetch("https://api.rift.trade/order", {
  method: "POST",
  headers: {
    Accept: "application/json",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    quote_id: "00000000-0000-4000-8000-000000000001",
  }),
});

const data = await response.json();
console.log(data);

Body parameters

application/json

quote_idstringrequired

The id of a quote from POST /quote. The quote must not have expired, and a quote binds to one order.

uuid

refund_addressstring | null

Address on the from chain that receives a refund if the order cannot be completed. Optional; when not set, the refund goes to the original sender.

Show child attributes
Any of: string 1

string

Any of: null 2

null

to_addressstringrequired

Address on the to chain that receives the output. Validated against that chain's address format.

Responses

The order awaiting its deposit

application/json

Example response
{
  "format": "raw",
  "created_at": "2026-09-23T12:00:00Z",
  "deposit_address": "",
  "deposit_deadline": "2026-09-23T12:00:00Z",
  "from": "",
  "from_amount": "",
  "id": "00000000-0000-4000-8000-000000000001",
  "quote_id": "00000000-0000-4000-8000-000000000001",
  "status": "awaiting_deposit",
  "to": "",
  "to_address": "",
  "vault_id": "00000000-0000-4000-8000-000000000001",
  "venue_allowlist": [],
  "venue_blocklist": []
}
formatstringrequired

The format every amount and asset name in this response is written in, inherited from the quote.

Allowed: "raw""formatted"

amount_outstring | null

What the order settled: the amount of to that reached to_address when the status is delivered, or the amount of from that reached refund_address when it is refunded. Absent until then.

created_atstringrequired

When the order was created.

date-time

deposit_addressstringrequired

Address on the from chain to send from_amount to.

deposit_deadlinestringrequired

Instant after which deposits are no longer watched for and the order expires. Seven days after creation.

date-time

fromstringrequired

Asset to deposit, written per format.

from_amountstringrequired

Amount of from to deposit, exactly as quoted.

idstringrequired

Identifier used in GET /order/{id}.

uuid

integrator_idstring | null

The integrator_id of the quote this order was created from, or null.

Show child attributes
Any of: string 1

string

Any of: null 2

null

quote_idstringrequired

The quote this order was created from.

uuid

refund_addressstring | null

Address on the from chain that receives a refund if the order cannot be completed. Null when none was given; it is then set to the deposit's sender address as soon as the deposit is seen.

Show child attributes
Any of: string 1

string

Any of: null 2

null

statusstringrequired

awaiting_deposit until funds arrive at deposit_address; funded once they are seen; executing while the route runs; delivered when amount_out has reached to_address; refunded when execution gave up and amount_out was sent back to refund_address instead; expired when nothing arrived by deposit_deadline; frozen when the order was halted by policy, when execution gave up with no refund destination, or when the refund itself failed, and needs an operator.

Allowed: "awaiting_deposit""funded""underfunded""expired""executing""delivered""refunded""frozen"

tostringrequired

Asset delivered, written per format.

to_addressstringrequired

Address on the to chain that receives the output.

vault_idstringrequired

Internal identifier of the vault holding the deposit address.

uuid

venue_allowliststring[]required

Venues quoting was restricted to; empty when it was not.

Show child attributes

string · "aave", "across", "cctp", "chainflip", "cowswap", "flytrade", "hyperliquid", "kyberswap", "lifi", "mayan", "morpho", "near_intents", "nordstern", "okx", "relay", "transit", "unit", "velora"

venue_blockliststring[]required

Venues excluded from quoting; empty when none were.

Show child attributes

string · "aave", "across", "cctp", "chainflip", "cowswap", "flytrade", "hyperliquid", "kyberswap", "lifi", "mayan", "morpho", "near_intents", "nordstern", "okx", "relay", "transit", "unit", "velora"

CHAT WITH TEAM