pub enum ApiError {
Http {
status: u16,
message: String,
},
Auth {
message: String,
},
RateLimit {
retry_after: Option<u64>,
},
NotFound {
resource: String,
id: String,
},
Validation {
field: Option<String>,
message: String,
},
Network {
message: String,
},
}Expand description
API-specific errors from the Todoist API.
These represent errors returned by the API itself (not transport-level errors).
Variants§
Http
HTTP-level error with status code (for unexpected status codes).
Auth
Authentication failure (401 Unauthorized, 403 Forbidden).
RateLimit
Rate limit exceeded (429 Too Many Requests).
NotFound
Resource not found (404 Not Found).
Fields
Validation
API validation error (400 Bad Request with validation details).
Fields
Network
Network/connection error.
Implementations§
Source§impl ApiError
impl ApiError
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Returns true if this error is potentially retryable.
Sourcepub fn is_invalid_sync_token(&self) -> bool
pub fn is_invalid_sync_token(&self) -> bool
Returns true if this error indicates an invalid sync token.
The Todoist API returns a 400 status code with a validation error when a sync token is invalid or expired. This method checks for common error messages that indicate sync token issues.
Trait Implementations§
Source§impl Error for ApiError
impl Error for ApiError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
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
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
impl Eq for ApiError
impl StructuralPartialEq for ApiError
Auto Trait Implementations§
impl Freeze for ApiError
impl RefUnwindSafe for ApiError
impl Send for ApiError
impl Sync for ApiError
impl Unpin for ApiError
impl UnsafeUnpin for ApiError
impl UnwindSafe for ApiError
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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.