Skip to main content

Crate jacquard_api

Crate jacquard_api 

Source
Expand description

Generated AT Protocol Lexicon bindings.

This crate contains Rust bindings generated from Lexicon schemas. Most application code uses these types through the jacquard::api re-export, alongside jacquard::Client or one of the higher-level session helpers.

§Finding things

Lexicon NSIDs map to Rust modules by replacing dots with module separators and using snake_case for Rust identifiers. For example, app.bsky.feed.getTimeline is generated under app_bsky::feed::get_timeline.

Top-level namespace modules are feature-gated. Enable the feature matching the top-level namespace module, such as app_bsky or com_atproto, to use those bindings.

§String backing

Many generated data types are generic over a string backing type, usually written as S: BosStr = DefaultStr. The generic is part of the public API: use the default owned backing when you do not need to choose, or select another backing such as String, &str, or CowStr<'_> when that is useful for your code.

Common examples omit the generic because the default is inferred in the usual request/response paths.

§XRPC endpoints

Endpoint modules contain request parameter/input structs, output structs, error enums, and marker types implementing jacquard_common::xrpc::{XrpcRequest, XrpcResp, XrpcEndpoint}. High-level client code normally constructs the request struct or marker type and sends it with jacquard::Client, then uses response helpers such as into_output() for default-backed output.

Modules§

app_bsky
Generated bindings for the app.bsky Lexicon namespace/module.
blog_pckt
Generated bindings for the blog.pckt Lexicon namespace/module.
builder_types
chat_bsky
Generated bindings for the chat.bsky Lexicon namespace/module.
com_atproto
Generated bindings for the com.atproto Lexicon namespace/module.
com_bad_example
Generated bindings for the com.bad.example Lexicon namespace/module.
com_whtwnd
Generated bindings for the com.whtwnd Lexicon namespace/module.
games_gamesgamesgamesgames
Generated bindings for the games.gamesgamesgamesgames Lexicon namespace/module.
net_anisota
Generated bindings for the net.anisota Lexicon namespace/module.
network_slices
Generated bindings for the network.slices Lexicon namespace/module.
place_stream
Generated bindings for the place.stream Lexicon namespace/module.
pub_leaflet
Generated bindings for the pub.leaflet Lexicon namespace/module.
sh_tangled
Generated bindings for the sh.tangled Lexicon namespace/module.
sh_weaver
Generated bindings for the sh.weaver Lexicon namespace/module.
site_standard
Generated bindings for the site.standard Lexicon namespace/module.
tools_ozone
Generated bindings for the tools.ozone Lexicon namespace/module.