Skip to main content

Crate keldra

Crate keldra 

Source
Expand description

Authenticated Rust client for Keldra object storage.

The crate provides ready-to-use object, authorization, administration, and PersonalDB clients, upload helpers, and the complete generated protocol surface.

Modules§

v1

Structs§

BearerToken
BooleanField
A Boolean field supporting exact matching and facets.
DateField
A timestamp field stored as signed Unix epoch milliseconds.
DateFormat
Input and facet presentation format for a Date field.
FloatField
IndexOrderToken
An order declaration that can only be obtained from a single-valued field carrying the ORDER capability.
KeywordField
An uninterpreted UTF-8 field with binary UTF-8 collation.
PredicateExpression
One valid, bounded public Boolean predicate expression.
SignedIntegerField
TextField
An analyzed UTF-8 field. Analysis must be selected before full-text search.
TypedJsonIndexBuilder
Builds one complete Typed JSON index definition.
UnsignedIntegerField

Enums§

IndexDefinitionError
A definition rejected before a request is sent to Keldra.
PredicateBuildError
A predicate rejected locally before a request is sent to Keldra.
PredicateScalar
One canonical JSON scalar accepted by a Typed JSON or metadata predicate.

Functions§

administration_client
authz_client
connect
connect_channel
Opens the shared transport used by object, PersonalDB, authorization and administration clients. Keeping credential exchange separate makes the one unauthenticated RPC explicit at call sites.
connect_with_credentials
Convenience for callers that want an object client directly from durable credentials. Long-lived applications should repeat exchange when their short-lived token expires, not persist the returned bearer token forever.
exchange_client_credentials
Exchanges one durable application credential for a short-lived bearer token. Production endpoints must be protected by TLS; the client secret is sent only in this request and is never retained by this transport.
index_client
object_client
personaldb_client
put_chunks
Executes the public StartPut + Put + PutEnd flow for owned chunks. Empty input sends the required single empty chunk and therefore creates a valid zero-byte object. This helper is for already-owned, infallible input; a fallible file or network producer must cancel the in-flight RPC on source failure so a short read cannot become a clean end-of-stream publication.

Type Aliases§

RawAdministrationClient
RawAuthzClient
RawClient
RawIndexClient
RawPersonalDbClient