Skip to main content

Crate goldrush_sdk

Crate goldrush_sdk 

Source
Expand description

§GoldRush SDK

A Rust client library for the GoldRush blockchain data APIs.

§Usage

use goldrush_sdk::{GoldRushClient, ClientConfig, chains};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = GoldRushClient::new("your-api-key", ClientConfig::default())?;
     
    let balances = client
        .get_token_balances_for_wallet_address(chains::ethereum::MAINNET, "0x123...", None)
        .await?;
     
    println!("{:?}", balances);
    Ok(())
}

Modules§

chains
Chain constants for commonly used networks Chain constants for commonly used blockchain networks in GoldRush API.

Macros§

trace_error
Macro for error logging with context.
trace_request
Macro for creating instrumented spans with request context.

Structs§

BalanceItem
Represents a token balance item returned by the API.
BalancesData
Container for balance items.
BalancesOptions
Options for customizing balance queries.
CacheConfig
Cache configuration for different endpoint types.
CacheStats
Cache statistics.
CircuitBreaker
Circuit breaker for preventing cascading failures.
CircuitBreakerConfig
Configuration for the circuit breaker.
CircuitBreakerExecutor
Wrapper for executing operations through a circuit breaker.
CircuitBreakerStats
Circuit breaker statistics.
ClientConfig
Configuration options for the GoldRush client.
EndpointStats
Statistics for individual endpoints.
GoldRushClient
The main GoldRush client for interacting with the API.
MemoryCache
In-memory cache with TTL and size limits.
MetricsCollector
Metrics collector for SDK operations.
MetricsSummary
Complete metrics summary.
NftItem
Represents an NFT item returned by the API.
NftMetadataItem
Represents detailed NFT metadata for a specific token.
NftOptions
Options for customizing NFT queries.
NftsData
Container for NFT items.
NftsPageIter
Iterator for paginating through NFTs.
RateLimitConfig
Rate limiting configuration for API requests.
RateLimiter
Token bucket rate limiter.
RequestId
Request correlation ID for tracing requests across the system.
Sanitizer
Sanitization utilities for user input.
SecurityConfig
Security configuration for the SDK.
SecurityContext
Security context for tracking request security information.
SecurityManager
Security utilities for the SDK.
Timer
Timer utility for measuring operation duration.
TracingContext
Tracing context for SDK operations.
TransactionItem
Represents a transaction item returned by the API.
TransactionsData
Container for transaction items.
TransactionsPageIter
Iterator for paginating through transactions.
TxOptions
Options for customizing transaction queries.
Validator
Validation utilities for blockchain data.

Enums§

CircuitState
Circuit breaker states.
Error
Error types that can occur when using the GoldRush SDK.

Type Aliases§

BalancesResponse
Response structure for balance queries.
NftMetadataResponse
Response structure for NFT metadata queries.
NftsResponse
Response structure for NFT queries.
Result
Result type alias for GoldRush SDK operations.
TransactionResponse
Response structure for single transaction queries.
TransactionsResponse
Response structure for transaction list queries.