TruthlinkedError

Enum TruthlinkedError 

Source
pub enum TruthlinkedError {
    Network(String),
    Unauthorized,
    Forbidden,
    RateLimitExceeded(String),
    InvalidRequest(String),
    ServerError,
    SerializationError,
    InvalidResponse,
    LicenseExpired,
}
Expand description

Errors that can occur when using the Truthlinked SDK

All error messages are designed to be safe for logging and do not leak sensitive information such as license keys or internal system details.

§Security Considerations

  • No credential information is included in error messages
  • Internal system details are not exposed
  • Error messages are safe to log and display to users
  • Stack traces do not contain sensitive information

Variants§

§

Network(String)

Network-related errors (connection failures, timeouts, DNS resolution)

This error indicates a problem with network connectivity between the client and the Truthlinked API. Common causes include:

  • Internet connectivity issues
  • DNS resolution failures
  • Firewall blocking HTTPS traffic
  • API server temporarily unavailable
§

Unauthorized

Authentication failed due to invalid or expired license key

This error occurs when:

  • License key is malformed or invalid
  • License key has expired
  • License key signature verification fails

Resolution: Verify your license key and ensure it hasn’t expired

§

Forbidden

Access denied due to insufficient license tier permissions

This error occurs when your license tier doesn’t include access to the requested operation. For example:

  • Free tier attempting token exchange (requires Professional+)
  • Professional tier attempting enforcement (requires Enterprise+)

Resolution: Upgrade your license tier or use a different endpoint

§

RateLimitExceeded(String)

Rate limit exceeded for your license tier

Each license tier has monthly request limits:

  • Free: 1,000 requests/month
  • Professional: 500,000 requests/month
  • Enterprise: Unlimited

Resolution: Wait for the limit to reset or upgrade your tier

§

InvalidRequest(String)

Request validation failed due to invalid parameters

This error indicates that the request parameters are malformed, missing required fields, or contain invalid values.

Resolution: Check the API documentation and verify request parameters

§

ServerError

Internal server error occurred

This indicates a problem on the Truthlinked API server side. The issue has been logged and will be investigated.

Resolution: Retry the request after a brief delay

§

SerializationError

Failed to serialize or deserialize request/response data

This error indicates a problem with JSON serialization/deserialization, typically due to unexpected response format from the server.

§

InvalidResponse

Received an invalid or unexpected response from the server

This error occurs when the server returns a response that doesn’t match the expected format or contains invalid data.

§

LicenseExpired

License has expired and needs to be renewed

Your license key has passed its expiration date and is no longer valid.

Resolution: Contact support to renew your license

Trait Implementations§

Source§

impl Debug for TruthlinkedError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for TruthlinkedError

Source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Error for TruthlinkedError

1.30.0 · Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<Error> for TruthlinkedError

Source§

fn from(err: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for TruthlinkedError

Source§

fn from(_: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more