Skip to content

Commit

Permalink
feat: update DEX endpoints
Browse files Browse the repository at this point in the history
  • Loading branch information
martinkersner committed Oct 28, 2024
1 parent c543f29 commit bf12bdc
Show file tree
Hide file tree
Showing 6 changed files with 95 additions and 252 deletions.
41 changes: 12 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,54 +50,37 @@ let candle_options = datamaxi::cex::CandleOptions::new();
candle.get("binance", "ETH-USDT", candle_options);
```
#### DEX Candle
#### DEX
```rust
let api_key = "my_api_key".to_string();
let candle: datamaxi::dex::Candle = datamaxi::api::Datamaxi::new(api_key);
let dex: datamaxi::dex::Dex = datamaxi::api::Datamaxi::new(api_key);

// Fetch supported intervals for DEX candle data
candle.intervals();
dex.intervals();

// Fetch supported exchange for DEX candle data
candle.exchanges();
// Fetch supported exchange for DEX data
dex.exchanges();

// Fetch supported chains for DEX candle data
candle.chains();
// Fetch supported chains for DEX data
dex.chains();

// Fetch supported pools for DEX candle data
// Fetch supported pools for DEX data
let pools_options = datamaxi::dex::PoolsOptions::new();
candle.pools(pools_options);
dex.pools(pools_options);

// Fetch DEX candle data
let params = datamaxi::dex::CandleOptions::new();
candle.get(
dex.candle(
"bsc_mainnet",
"pancakeswap",
"0xb24cd29e32FaCDDf9e73831d5cD1FFcd1e535423",
params,
);
```
#### DEX Trade
```rust
let api_key = "my_api_key".to_string();
let trade: datamaxi::dex::Trade = datamaxi::api::Datamaxi::new(api_key);

// Fetch supported exchange for DEX trade data
trade.exchanges();

// Fetch supported chains for DEX trade data
trade.chains();

// Fetch supported pools for DEX trade data
let pools_options = datamaxi::dex::PoolsOptions::new();
trade.pools(pools_options);

// Fetch DEX candle data
// Fetch DEX trade data
let trade_options = datamaxi::dex::TradeOptions::new().limit(5);
trade.get(
dex.trade(
"bsc_mainnet",
"pancakeswap",
"0xb24cd29e32FaCDDf9e73831d5cD1FFcd1e535423",
Expand Down
46 changes: 0 additions & 46 deletions examples/dex-trade.rs

This file was deleted.

42 changes: 29 additions & 13 deletions examples/dex-candle.rs → examples/dex.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,40 +3,56 @@ use std::env;
fn main() {
dotenv::dotenv().ok();
let api_key = env::var("DATAMAXI_API_KEY").expect("DATAMAXI_API_KEY not found");
let candle: datamaxi::dex::Candle = datamaxi::api::Datamaxi::new(api_key);
let dex: datamaxi::dex::Dex = datamaxi::api::Datamaxi::new(api_key);

// DEX Candle Intervals
match candle.intervals() {
// DEX Exchanges
match dex.exchanges() {
Ok(answer) => println!("{:?}", answer),
Err(e) => println!("Error: {}", e),
}

// DEX Candle Exchanges
match candle.exchanges() {
// DEX Chains
match dex.chains() {
Ok(answer) => println!("{:?}", answer),
Err(e) => println!("Error: {}", e),
}

// DEX Candle Chains
match candle.chains() {
Ok(answer) => println!("{:?}", answer),
// DEX Trade Pools
let pools_options = datamaxi::dex::PoolsOptions::new();
let pools_response = dex.pools(pools_options);
match pools_response {
Ok(answer) => match serde_json::to_string(&answer) {
Ok(json) => println!("{}", json),
Err(e) => println!("Error: {}", e),
},
Err(e) => println!("Error: {}", e),
}

// DEX Candle Pools
let pools_options = datamaxi::dex::PoolsOptions::new();
let pools_response = candle.pools(pools_options);
match pools_response {
// DEX Trade Data
let trade_options = datamaxi::dex::TradeOptions::new().limit(5);
let trade_response = dex.trade(
"bsc_mainnet",
"pancakeswap",
"0xb24cd29e32FaCDDf9e73831d5cD1FFcd1e535423",
trade_options,
);
match trade_response {
Ok(answer) => match serde_json::to_string(&answer) {
Ok(json) => println!("{}", json),
Err(e) => println!("Error: {}", e),
},
Err(e) => println!("Error: {}", e),
}

// DEX Candle Intervals
match dex.intervals() {
Ok(answer) => println!("{:?}", answer),
Err(e) => println!("Error: {}", e),
}

// DEX Candle Data
let params = datamaxi::dex::CandleOptions::new();
let candle_response = candle.get(
let candle_response = dex.candle(
"bsc_mainnet",
"pancakeswap",
"0xb24cd29e32FaCDDf9e73831d5cD1FFcd1e535423",
Expand Down
4 changes: 2 additions & 2 deletions src/cex.rs
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ impl Datamaxi for Candle {
/// # Example
/// ```rust
/// use crate::datamaxi::api::Datamaxi;
/// let candle = datamaxi::dex::Candle::new("my_api_key".to_string());
/// let candle = datamaxi::cex::Candle::new("my_api_key".to_string());
/// ```
fn new(api_key: String) -> Candle {
let config = Config {
Expand All @@ -136,7 +136,7 @@ impl Datamaxi for Candle {
/// # Example
/// ```rust
/// use crate::datamaxi::api::Datamaxi;
/// let candle = datamaxi::dex::Candle::new_with_base_url("my_api_key".to_string(), "https://custom-api.example.com".to_string());
/// let candle = datamaxi::cex::Candle::new_with_base_url("my_api_key".to_string(), "https://custom-api.example.com".to_string());
/// ```
fn new_with_base_url(api_key: String, base_url: String) -> Candle {
let config = Config {
Expand Down
Loading

0 comments on commit bf12bdc

Please sign in to comment.