pub struct OAuthCredential {
pub access_token: String,
pub refresh_token: String,
pub expires_at: u64,
pub email: Option<String>,
pub id_token: Option<String>,
}Expand description
#20: ZeroizeOnDrop wipes access_token, refresh_token, and id_token from memory when the credential is dropped (e.g. after a token rotation). Clone is implemented manually so the derive doesn’t conflict with ZeroizeOnDrop.
Fields§
§access_token: String§refresh_token: String§expires_at: u64Milliseconds since Unix epoch
email: Option<String>Account email, fetched from roles endpoint after auth
id_token: Option<String>OpenAI id_token — required by the Codex CLI’s ~/.codex/auth.json
Implementations§
Source§impl OAuthCredential
impl OAuthCredential
Sourcepub fn needs_refresh(&self) -> bool
pub fn needs_refresh(&self) -> bool
True if the token expires within the next 5 minutes.
Trait Implementations§
Source§impl Clone for OAuthCredential
impl Clone for OAuthCredential
Source§impl Debug for OAuthCredential
impl Debug for OAuthCredential
Source§impl<'de> Deserialize<'de> for OAuthCredential
impl<'de> Deserialize<'de> for OAuthCredential
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Drop for OAuthCredential
impl Drop for OAuthCredential
Source§impl From<OAuthCredential> for Credential
impl From<OAuthCredential> for Credential
Source§fn from(c: OAuthCredential) -> Self
fn from(c: OAuthCredential) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for OAuthCredential
impl RefUnwindSafe for OAuthCredential
impl Send for OAuthCredential
impl Sync for OAuthCredential
impl Unpin for OAuthCredential
impl UnsafeUnpin for OAuthCredential
impl UnwindSafe for OAuthCredential
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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