Skip to main content

Crate jmap_base_client

Crate jmap_base_client 

Source
Expand description

RFC 8620 base JMAP client: auth, session fetch, blob, SSE, and WebSocket.

Extension-specific clients (jmap-chat-client, jmap-mail-client) depend on this crate.

Re-exports§

pub use auth::AuthProvider;
pub use auth::BasicAuth;
pub use auth::BearerAuth;
pub use auth::CustomCaTransport;
pub use auth::DefaultTransport;
pub use auth::NoneAuth;
pub use auth::TransportConfig;
pub use blob::expand_url_template;
pub use blob::BlobUploadResponse;
pub use blob::DownloadBlobParams;
pub use client::extract_response;
pub use client::ClientConfig;
pub use client::JmapClient;
pub use error::ClientError;
pub use push::StateChange;
pub use request::AccountInfo;
pub use request::JmapRequestBuilder;
pub use request::Session;
pub use request::WebSocketCapability;
pub use sse::parse_sse_block;
pub use sse::SseEvent;
pub use sse::SseFrame;
pub use ws::connect_ws;
pub use ws::WsFrame;
pub use ws::WsSession;

Modules§

auth
Auth traits and credential implementations for JMAP clients.
blob
Blob upload/download operations and supporting types (RFC 8620 §6.1, §6.2)
client
Auth-agnostic base JMAP HTTP client (RFC 8620).
error
push
Canonical push notification types shared by SSE and WebSocket transports. Spec: RFC 8620 §7.1 (Push Subscriptions)
request
sse
SSE types and frame parser for JMAP push notifications. Spec: RFC 8620 §7.3 (Push via Server-Sent Events) Wire format: RFC 8895 (Server-Sent Events)
ws
WebSocket transport for JMAP (RFC 8887).