Skip to main content
POST
Simulate an overall conversion failure for a sandbox order

Authorizations

x-api-key
string
header
required

Path Parameters

id
string
required

Body

application/json
reason
string

Optional free-text reason surfaced as failureMessage on the order.failed webhook and the polled GET /v2/orders/:id response.

Maximum string length: 500

Response

id
string
required
Pattern: ^ord_[0-9A-Za-z]{22}$
customerId
string | null
required
Pattern: ^cus_[0-9A-Za-z]{22}$
status
enum<string>
required
Available options:
pending,
succeeded,
failed,
cancelled
type
enum<string>
required
Available options:
onramp,
offramp,
conversion
destination
object
required
sourceAsset
object
required
destinationAsset
object
required
lockSide
enum<string>
required
Available options:
source,
destination
rate
object
required
fees
object[]
required
totalDebit
object
required
lockExpiresAt
string<date-time>
required

Deadline for execution to begin, not merely for the source to be funded. If execution hasn't been claimed by this time, the order transitions to status: cancelled with cancellationReason: 'expired' and can no longer execute — funding the source after this timestamp does not revive it. Create a new order to get a fresh rate lock.

Example:

"2026-01-15T09:30:00.000Z"

createdAt
string<date-time>
required

ISO 8601 timestamp

Example:

"2026-01-15T09:30:00.000Z"

autoExecute
boolean
required

Echoes the create-time value. When true, Conduit automatically claims execution once the available source balance covers totalDebit (principal plus fees), with no client action required — orders sharing the same source resource execute oldest-first, so a still-underfunded older order can delay a newer, already-funded one; when false, the client must call POST /v2/orders/{id}/execute (repeatable after funding if a prior attempt returned 422 INSUFFICIENT_FUNDS). Order creation never checks or reserves the source's available balance regardless of this value.

linkedTransactionIds
string[]
required
Pattern: ^txn_[0-9A-Za-z]{22}$
clientReferenceId
string

Client-supplied reference, unique per resource within your organization. 1-255 characters from A-Za-z, 0-9, underscore, hyphen, colon, and period — no spaces.

Pattern: ^[A-Za-z0-9_\-:.]{1,255}$
source
object

The funding resource, when the order named one. Omitted entirely on a deposit-funded order (created without a source): the funding wallet is Conduit-managed infrastructure with no client-resolvable id, and depositInstructions carries the address to fund at instead. The presence of depositInstructions is the discriminator.

autoPayout
object

AutoPayout payload. Crypto recipients omit rail/ach/swift/instant/remittance; fiat (us|swift) recipients require rail and may carry the matching per-rail context block.

markup
object

Present on an order that declared a margin which comes to at least one minor unit of the source asset. assetAmount is the total accrued to you, fixed at quote time. The two shapes reach the customer differently: the markupBps part is folded into the quoted rate, so it never appears in fees[] and does not move totalDebit, while the markupAmount part is a line item in fees[] owned by you and it does move totalDebit.

executedAt
string<date-time>

ISO 8601 timestamp

Example:

"2026-01-15T09:30:00.000Z"

executionTrigger
enum<string>

Which path claimed execution: 'client' for a POST /v2/orders/{id}/execute call, 'auto' for automatic execution by Conduit. Set as soon as execution is claimed — well before the order reaches a terminal status — so it can appear on an order that is still status: pending while its conversion is in flight. Absent on an order that hasn't started executing yet (including one cancelled before execution began).

Available options:
client,
auto
cancelledAt
string<date-time>

ISO 8601 timestamp

Example:

"2026-01-15T09:30:00.000Z"

cancellationReason
enum<string>
Available options:
expired,
client_cancelled
failureCode
enum<string>
Available options:
insufficient_funds,
provider_unavailable,
provider_rejected,
internal_error,
cancelled
failureMessage
string
quoteOptionId
string

Present when this order redeemed a POST /v2/quotes option — the id of the option it consumed.

Pattern: ^qop_[0-9A-Za-z]{22}$
depositInstructions
object[]

Where to send funds to fund this order. Exactly one crypto_address block.

Required array length: 1 element
fundedBy
object[]

Transfers that funded this order, with how much of each it draws. Present on the order detail read for an order funded at a Conduit funding address; omitted on the list read and on an order that names its own source.