Types
CdpAuthenticationInterceptor: Adds CDP request-bound credentials to generated Java SDK requests. The Fern-generated client attaches EndpointMetadata to each request from the OpenAPI contract. This interceptor derives the bearer token for every request and adds wallet authentication only where that metadata requires X-Wallet-Auth. Consequently, a newly generated endpoint receives the appropriate request authentication without endpoint-specific handwritten SDK code.CdpClientApiException: This exception type will be thrown for any non-2XX API responses.CdpClientException: This class serves as the base exception for all errors in the SDK.CdpClientHttpResponse<T>ClientOptionsConsoleLogger: Default logger implementation that writes to the console using Logger. Uses the “fern” logger name with a simple format of “LEVEL - message”.EndpointMetadata: Metadata about an endpoint, including its security requirements. Security is represented as a list of alternative requirements (OR). Each requirement is a map of scheme names to required scopes (AND).EnvironmentFileStream: Represents a file stream with associated metadata for file uploads.ILogger: Interface for custom logger implementations. Implement this interface to provide a custom logging backend for the SDK. The SDK will call the appropriate method based on the log level. Example: public class MyCustomLogger implements ILogger { public void debug(String message) { System.out.println(“[DBG] ” + message); } public void info(String message) { System.out.println(“[INF] ” + message); } public void warn(String message) { System.out.println(“[WRN] ” + message); } public void error(String message) { System.out.println(“[ERR] ” + message); } }InputStreamRequestBody: A custom implementation of OkHttp’s RequestBody that wraps an InputStream. This class allows streaming of data from an InputStream directly to an HTTP request body, which is useful for file uploads or sending large amounts of data without loading it all into memory.LogConfig: Configuration for SDK logging. Use the builder to configure logging behavior: LogConfig config = LogConfig.builder() .level(LogLevel.DEBUG) .silent(false) .build(); Or with a custom logger: LogConfig config = LogConfig.builder() .level(LogLevel.DEBUG) .logger(new MyCustomLogger()) .silent(false) .build(); Defaults: level — LogLevel.INFO logger — ConsoleLogger (writes to stderr via java.util.logging) silent — true (no output unless explicitly enabled)Logger: SDK logger that filters messages based on level and silent mode. Silent by default — no log output unless explicitly configured. Create via LogConfig or directly: Logger = new Logger(LogLevel.DEBUG, new ConsoleLogger(), false); logger.debug(“request sent”);LoggingInterceptor: OkHttp interceptor that logs HTTP requests and responses. Logs request method, URL, and headers (with sensitive values redacted) at debug level. Logs response status at debug level, and 4xx/5xx responses at error level. Does nothing if the logger is silent.LogLevel: Log levels for SDK logging configuration. Silent by default — no log output unless explicitly configured.MediaTypesNullable<T>NullableNonemptyFilterObjectMappersQueryStringMapperRequestOptionsResponseBodyInputStream: A custom InputStream that wraps the InputStream from the OkHttp Response and ensures that the OkHttp Response object is properly closed when the stream is closed. This class extends FilterInputStream and takes an OkHttp Response object as a parameter. It retrieves the InputStream from the Response and overrides the close method to close both the InputStream and the Response object, ensuring proper resource management and preventing premature closure of the underlying HTTP connection.ResponseBodyReader: A custom Reader that wraps the Reader from the OkHttp Response and ensures that the OkHttp Response object is properly closed when the reader is closed. This class extends FilterReader and takes an OkHttp Response object as a parameter. It retrieves the Reader from the Response and overrides the close method to close both the Reader and the Response object, ensuring proper resource management and preventing premature closure of the underlying HTTP connection.RetryInterceptorRfc2822DateTimeDeserializer: Custom deserializer that handles converting RFC 2822 (RFC 1123) dates into OffsetDateTime objects. This is used for fields with format “date-time-rfc-2822”, such as Twilio’sdateCreated,dateSent,dateUpdated.SseEvent<T>: Represents a Server-Sent Event with all standard fields. Used for event-level discrimination where the discriminator is at the SSE envelope level.SseEventParser: Utility class for parsing Server-Sent Events with support for discriminated unions. Handles two discrimination patterns: Data-level discrimination: The discriminator (e.g., ‘type’) is inside the JSON data payload. Jackson’s polymorphic deserialization handles this automatically. Event-level discrimination: The discriminator (e.g., ‘event’) is at the SSE envelope level. This requires constructing the full SSE envelope for Jackson to process.Stream<T>: The Stream class implements Iterable to provide a simple mechanism for reading and parsing objects of a given type from data streamed via a Reader using a specified delimiter. Stream assumes that data is being pushed to the provided Reader asynchronously and utilizes a Scanner to block during iteration if the next object is not available. Iterable stream for parsing JSON and Server-Sent Events (SSE) data. Supports both newline-delimited JSON and SSE with optional stream termination.SuppliersWrappedAlias