Sigil documentation
ReferenceJSON-RPC

sigil_quoteDexSwapExactIn

Quote an exact-input swap.

Method

sigil_quoteDexSwapExactIn is registered in the canonical JSON-RPC catalog. Use POST /rpc, Content-Type: application/json, JSON-RPC 2.0 and a caller-controlled request id. Node RPC profile, build feature and runtime activation checks still apply.

Quote an exact-input swap.

Request binding

Source handler: rpc_dex::handle_quote_dex_swap_exact_in in sigil/node/sigil-node/src/rpc_dex.rs, line 111.

The handler uses no directly named params.get fields, or delegates input parsing to a typed helper. Use the request types below rather than assuming an empty parameter object.

Parsing excerpt

These source excerpts show binding and validation; they are not runnable client code.

    let pool_id = match extract_string_param(&req.params, 0, "pool_id") {
        Some(pool_id) => pool_id,
        None => return RpcResponse::error(req.id.clone(), -32602, "missing 'pool_id' parameter"),
    };

    let asset_in = match extract_string_param(&req.params, 1, "asset_in") {
        Some(asset_in) => asset_in,
        None => return RpcResponse::error(req.id.clone(), -32602, "missing 'asset_in' parameter"),
    };

    let amount_in = match extract_u64_param(&req.params, 2, "amount_in") {
        Some(amount_in) => amount_in,
        None => return RpcResponse::error(req.id.clone(), -32602, "missing 'amount_in' parameter"),
    };

    let min_amount_out = extract_u64_param(&req.params, 3, "min_amount_out").unwrap_or(1);

Responses and failures

Check HTTP status, parse the JSON-RPC envelope, reject error, and require result on success. Preserve large base-unit integers without floating-point rounding. A catalog method does not bypass authentication, capability, policy or activation requirements.

On this page