Skip to main content

Module rest

Module rest 

Source
Expand description

REST DTOs for the relay’s legacy HTTP+JSON endpoints.

Wire types are generated from proto/cinch/v1/*.proto at build time (see build.rs); this module re-exports them under the names the CLI and desktop already use. The generated types preserve snake_case JSON + Go-style omitempty semantics via per-field skip_serializing_if attribute injection.

ContentType is a thin Rust-side enum kept for the CLI’s auto-detection pipeline. On the wire it round-trips through the proto’s string content_type field via From<ContentType> for &'static str so callers can keep producing strongly typed values.

Re-exports§

pub use crate::proto::cinch::v1::DeviceCodeCompleteRequest;
pub use crate::proto::cinch::v1::DeviceCodeDenyRequest;
pub use crate::proto::cinch::v1::DeviceCodePollResponse;
pub use crate::proto::cinch::v1::DeviceCodeStartRequest as DeviceCodeRequest;
pub use crate::proto::cinch::v1::DeviceCodeStartResponse as DeviceCodeResponse;
pub use crate::proto::cinch::v1::ErrorResponse;
pub use crate::proto::cinch::v1::KeyBundleGetResponse as KeyBundleResponse;
pub use crate::proto::cinch::v1::KeyBundlePutRequest;
pub use crate::proto::cinch::v1::PullResponse;
pub use crate::proto::cinch::v1::PushClipRequest as PushRequest;
pub use crate::proto::cinch::v1::PushClipResponse as PushResponse;
pub use crate::proto::cinch::v1::RegisterDevicePublicKeyRequest;
pub use crate::proto::cinch::v1::RevokeDeviceRequest as DeviceRevokeRequest;

Enums§

ContentType
Content classification — wire values are lowercase strings ("text", "image", etc.) matching the Go side’s protocol.ContentType constants and the string content_type field on the proto messages.