Skip to main content

create_batch_orders/
create_batch_orders.rs

1use gateio_rs::{
2    api::spot::{self, Order},
3    http::Credentials,
4    ureq::GateHttpClient,
5};
6use serde_json::Value;
7
8fn main() -> Result<(), Box<gateio_rs::ureq::Error>> {
9    dotenv::dotenv().ok();
10
11    let api_key = std::env::var("GATE_API_KEY").expect("GATE_API_KEY not set");
12    let api_secret = std::env::var("GATE_API_SECRET").expect("GATE_API_SECRET not set");
13    let credentials = Credentials::new(api_key, api_secret);
14
15    let client = GateHttpClient::default().credentials(credentials.clone());
16
17    // Create multiple orders
18    let orders = vec![
19        Order::new("BTC_USDT", "buy", "0.001")
20            .order_type("limit")
21            .price("30000")
22            .account("spot"),
23        Order::new("ETH_USDT", "buy", "0.01")
24            .order_type("limit")
25            .price("2000")
26            .account("spot"),
27    ];
28
29    let req = spot::create_batch_orders(orders);
30
31    let resp = client.send(req)?;
32    let body = resp.into_body_str()?;
33    let resp_obj: Value = serde_json::from_str(&body).unwrap();
34    println!("{:?}", resp_obj);
35
36    Ok(())
37}