pub struct Credential {
pub api_key: Ustr,
pub api_passphrase: String,
/* private fields */
}Expand description
OKX API credentials for signing requests.
Uses HMAC SHA256 for request signing as per OKX API specifications. Secrets are automatically zeroized on drop for security.
Fields§
§api_key: Ustr§api_passphrase: StringImplementations§
Source§impl Credential
impl Credential
Sourcepub fn new(api_key: String, api_secret: String, api_passphrase: String) -> Self
pub fn new(api_key: String, api_secret: String, api_passphrase: String) -> Self
Creates a new Credential instance.
Sourcepub fn sign(
&self,
timestamp: &str,
method: &str,
endpoint: &str,
body: &str,
) -> String
pub fn sign( &self, timestamp: &str, method: &str, endpoint: &str, body: &str, ) -> String
Signs a request message according to the OKX authentication scheme.
This string-based variant is preserved for compatibility with callers
that already have a UTF-8 body string. Prefer Self::sign_bytes when you
have the original body bytes to avoid any possibility of encoding drift.
Sourcepub fn sign_bytes(
&self,
timestamp: &str,
method: &str,
endpoint: &str,
body: Option<&[u8]>,
) -> String
pub fn sign_bytes( &self, timestamp: &str, method: &str, endpoint: &str, body: Option<&[u8]>, ) -> String
Signs a request message using raw body bytes to avoid any UTF-8 conversion or re-serialization differences between the signed content and the bytes sent.
Sourcepub fn api_key_masked(&self) -> String
pub fn api_key_masked(&self) -> String
Returns a masked version of the API key for logging purposes.
Shows first 4 and last 4 characters with ellipsis in between. For keys shorter than 8 characters, shows asterisks only.
Trait Implementations§
Source§impl Clone for Credential
impl Clone for Credential
Source§fn clone(&self) -> Credential
fn clone(&self) -> Credential
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Credential
impl Debug for Credential
Auto Trait Implementations§
impl Freeze for Credential
impl RefUnwindSafe for Credential
impl Send for Credential
impl Sync for Credential
impl Unpin for Credential
impl UnwindSafe for Credential
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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