Skip to main content

Core client and policies

Client and ClientBuilder provide shared authentication, transport and request policies. Product clients wrap this foundation. The SDK is async and uses the application's runtime.

Module or typeResponsibility
authAuthentication, OAuth providers and caller-supplied TokenProvider implementations
configEndpoint, OriginPolicy, Limits, RequestOptions and Session
transportTransport abstraction, request/response types and optional ReqwestTransport
errorTyped errors and error classifications
dataJSON values, finite numbers, omission/null/value representations
paginationPages, item streams, bounded collections, resume and truncation status
validationRequest and response validation modes
secretSecret-bearing values with redacted formatting

Response policy​

RequestOptions::without_response_defaults() disables insertion of missing schema defaults for that operation. response_defaults() reports the policy. Direct validation offers Mode::Request, Mode::Response and Mode::ResponseWithoutDefaults.

Both response modes preserve unknown enum strings and object keys and tolerate response string formats. Required fields and types still depend on the selected schema. Request validation continues to enforce its contract.

Patch distinguishes unset, null and value. A bounded collection can report truncation; inspect its completion status before treating it as a full result. Errors and transport failures on writes may leave the remote outcome uncertain.

Generated reference​