pub struct DydxAdapterConfig {Show 15 fields
pub network: DydxNetwork,
pub base_url: String,
pub ws_url: String,
pub grpc_url: String,
pub grpc_urls: Vec<String>,
pub chain_id: String,
pub timeout_secs: u64,
pub wallet_address: Option<String>,
pub subaccount: u32,
pub is_testnet: bool,
pub mnemonic: Option<String>,
pub authenticator_ids: Vec<u64>,
pub max_retries: u32,
pub retry_delay_initial_ms: u64,
pub retry_delay_max_ms: u64,
}Expand description
Configuration for the dYdX adapter.
Fields§
§network: DydxNetworkNetwork environment (mainnet or testnet).
base_url: StringBase URL for the HTTP API.
ws_url: StringBase URL for the WebSocket API.
grpc_url: StringBase URL for the gRPC API (Cosmos SDK transactions).
For backwards compatibility, a single URL can be provided.
Consider using grpc_urls for fallback support.
grpc_urls: Vec<String>List of gRPC URLs with fallback support.
If provided, the client will attempt to connect to each URL in order until a successful connection is established. This is recommended for production use in DEX environments where nodes can fail.
chain_id: StringChain ID (e.g., “dydx-mainnet-1” for mainnet, “dydx-testnet-4” for testnet).
timeout_secs: u64Request timeout in seconds.
wallet_address: Option<String>Wallet address for the account (optional, can be derived from mnemonic).
subaccount: u32Subaccount number (default: 0).
is_testnet: boolWhether this is a testnet configuration.
Precedence: network is canonical. If both network and is_testnet
are provided and conflict, network takes precedence internally.
This flag exists for backwards compatibility and may be derived from
network in future versions.
mnemonic: Option<String>Mnemonic phrase for wallet (optional, loaded from environment if not provided).
authenticator_ids: Vec<u64>Authenticator IDs for permissioned key trading.
When provided, transactions will include a TxExtension to enable trading via sub-accounts using delegated signing keys. This is an advanced feature for institutional setups with separated hot/cold wallet architectures.
See https://docs.dydx.xyz/concepts/trading/authenticators for details on permissioned keys and authenticator configuration.
max_retries: u32Maximum number of retries for failed requests (default: 3).
retry_delay_initial_ms: u64Initial retry delay in milliseconds (default: 1000ms).
retry_delay_max_ms: u64Maximum retry delay in milliseconds (default: 10000ms).
Implementations§
Source§impl DydxAdapterConfig
impl DydxAdapterConfig
Sourcepub fn get_grpc_urls(&self) -> Vec<String>
pub fn get_grpc_urls(&self) -> Vec<String>
Get the list of gRPC URLs to use for connection with fallback support.
Returns grpc_urls if non-empty, otherwise falls back to a single-element
vector containing grpc_url.
Sourcepub const fn get_chain_id(&self) -> ChainId
pub const fn get_chain_id(&self) -> ChainId
Map the configured network to the underlying chain ID.
This is the recommended way to get the chain ID for transaction submission.
Sourcepub const fn compute_is_testnet(&self) -> bool
pub const fn compute_is_testnet(&self) -> bool
Convenience: compute is_testnet from network.
Prefer network as the source of truth; this method is provided to
avoid ambiguity when legacy configs include is_testnet.
Trait Implementations§
Source§impl Clone for DydxAdapterConfig
impl Clone for DydxAdapterConfig
Source§fn clone(&self) -> DydxAdapterConfig
fn clone(&self) -> DydxAdapterConfig
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DydxAdapterConfig
impl Debug for DydxAdapterConfig
Source§impl Default for DydxAdapterConfig
impl Default for DydxAdapterConfig
Source§impl<'de> Deserialize<'de> for DydxAdapterConfig
impl<'de> Deserialize<'de> for DydxAdapterConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for DydxAdapterConfig
impl RefUnwindSafe for DydxAdapterConfig
impl Send for DydxAdapterConfig
impl Sync for DydxAdapterConfig
impl Unpin for DydxAdapterConfig
impl UnwindSafe for DydxAdapterConfig
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].