Skip to main content

Crate duners

Crate duners 

Source
Expand description

§duners

A Rust client for the Dune Analytics API. Execute queries, poll for completion, and deserialize results into your own types.

§Quick start

  1. Get an API key from Dune and set it:

    export DUNE_API_KEY="your-api-key"
  2. Add the dependency and run a query:

use duners::{DuneClient, DuneRequestError};
use serde::Deserialize;

#[derive(Deserialize, Debug)]
struct Row {
    symbol: String,
    max_price: f64,
}

#[tokio::main]
async fn main() -> Result<(), DuneRequestError> {
    let client = DuneClient::from_env();
    let result = client.refresh::<Row>(971694, None, None).await?;
    println!("{:?}", result.get_rows());
    Ok(())
}

§What’s in this crate

See the README for more examples and details.

Re-exports§

pub use client::DuneClient;
pub use error::DuneRequestError;
pub use parameters::Parameter;
pub use response::ExecutionStatus;
pub use response::GetResultResponse;

Modules§

client
error
parameters
parse_utils
Utilities for parsing Dune API response fields.
response
Response types for Dune API methods.