Interface Apiv2ClientResolvedConfig

The resolved configuration interface of Apiv2Client class. This is resolved and normalized from the constructor configuration interface.

interface Apiv2ClientResolvedConfig {
    apiVersion: string;
    authSchemePreference: Provider<string[]>;
    base64Decoder: Decoder;
    base64Encoder: Encoder;
    bodyLengthChecker: BodyLengthCalculator;
    cacheMiddleware: boolean;
    customUserAgent?: UserAgent;
    defaultSigningName: string;
    defaultsMode: DefaultsMode | Provider<DefaultsMode>;
    defaultUserAgentProvider: Provider<UserAgent>;
    disableHostPrefix: boolean;
    endpoint: Provider<Endpoint>;
    endpointProvider: (
        params: EndpointParameters,
        context?: { logger?: Logger },
    ) => EndpointV2;
    extensions: RuntimeExtension[];
    httpAuthSchemeProvider: Apiv2HttpAuthSchemeProvider;
    httpAuthSchemes: HttpAuthScheme[];
    isCustomEndpoint?: boolean;
    logger: Logger;
    maxAttempts: Provider<number> | number & Provider<number>;
    profile: string;
    protocol: (
        undefined
        | ClientProtocol<any, any>
        | $ClientProtocol<any, any>
    ) & (
        | ClientProtocol<any, any>
        | $ClientProtocol<any, any>
        | ClientProtocolCtor<any, any>
        | $ClientProtocolCtor<any, any>
    );
    protocolSettings: { defaultNamespace?: string; [setting: string]: unknown } & {
        defaultNamespace?: string;
        [setting: string]: unknown;
    };
    region: (string | Provider<string>) & (
        | Provider<string> & string
        | Provider<string> & Provider<undefined | string>
    );
    requestHandler: RequestHandler<any, any, HttpHandlerOptions> & (
        HttpHandlerUserInput & RequestHandler<any, any, {}>
    );
    retryMode: string
    | Provider<string>;
    retryStrategy: Provider<RetryStrategy | RetryStrategyV2>;
    runtime: string;
    serviceConfiguredEndpoint?: Provider<undefined | string>;
    serviceId: string;
    sha256: ChecksumConstructor | HashConstructor;
    streamCollector: StreamCollector;
    tls: boolean;
    token?: TokenIdentityProvider;
    urlParser: UrlParser;
    useDualstackEndpoint: (boolean | Provider<boolean>) & (
        Provider<boolean> & (boolean | Provider<boolean | undefined> | undefined)
    );
    useFipsEndpoint: (boolean | Provider<boolean>) & (
        Provider<boolean> & (boolean | Provider<boolean | undefined> | undefined)
    );
    userAgentAppId: Provider<undefined | string>;
    utf8Decoder: Decoder;
    utf8Encoder: Encoder;
}

Hierarchy (View Summary)

Properties

apiVersion: string

The API version set internally by the SDK, and is not planned to be used by customer code.

authSchemePreference: Provider<string[]>

A comma-separated list of case-sensitive auth scheme names. An auth scheme name is a fully qualified auth scheme ID with the namespace prefix trimmed. For example, the auth scheme with ID aws.auth#sigv4 is named sigv4.

base64Decoder: Decoder

The function that will be used to convert a base64-encoded string to a byte array.

base64Encoder: Encoder

The function that will be used to convert binary data to a base64-encoded string.

bodyLengthChecker: BodyLengthCalculator

A function that can calculate the length of a request body.

cacheMiddleware: boolean

Default false.

When true, the client will only resolve the middleware stack once per Command class. This means modifying the middlewareStack of the command or client after requests have been made will not be recognized.

Calling client.destroy() also clears this cache.

Enable this only if needing the additional time saved (0-1ms per request) and not needing middleware modifications between requests.

customUserAgent?: UserAgent

The custom user agent header that would be appended to default one

defaultSigningName: string
defaultsMode: DefaultsMode | Provider<DefaultsMode>

The @smithy/smithy-client#DefaultsMode that will be used to determine how certain default configuration options are resolved in the SDK.

defaultUserAgentProvider: Provider<UserAgent>

The provider populating default tracking information to be sent with user-agent, x-amz-user-agent header

disableHostPrefix: boolean

Disable dynamically changing the endpoint of the client based on the hostPrefix trait of an operation.

endpoint: Provider<Endpoint>

Custom endpoint provided by the user. This is normalized to a single interface from the various acceptable types. This field will be undefined if a custom endpoint is not provided.

endpointProvider: (
    params: EndpointParameters,
    context?: { logger?: Logger },
) => EndpointV2
extensions: RuntimeExtension[]

Optional extensions

httpAuthSchemeProvider: Apiv2HttpAuthSchemeProvider

Configuration of an HttpAuthSchemeProvider for a client which resolves which HttpAuthScheme to use.

httpAuthSchemes: HttpAuthScheme[]

Configuration of HttpAuthSchemes for a client which provides default identity providers and signers per auth scheme.

isCustomEndpoint?: boolean

Whether the endpoint is specified by caller. This should be used over checking the existence of endpoint, since that may have been set by other means, such as the default regional endpoint provider function.

logger: Logger

Optional logger for logging debug/info/warn/error.

maxAttempts: Provider<number> | number & Provider<number>

Value for how many times a request will be made at most in case of retry.

profile: string

Setting a client profile is similar to setting a value for the AWS_PROFILE environment variable. Setting a profile on a client in code only affects the single client instance, unlike AWS_PROFILE.

When set, and only for environments where an AWS configuration file exists, fields configurable by this file will be retrieved from the specified profile within that file. Conflicting code configuration and environment variables will still have higher priority.

For client credential resolution that involves checking the AWS configuration file, the client's profile (this value) will be used unless a different profile is set in the credential provider options.

protocol: (undefined | ClientProtocol<any, any> | $ClientProtocol<any, any>) & (
    | ClientProtocol<any, any>
    | $ClientProtocol<any, any>
    | ClientProtocolCtor<any, any>
    | $ClientProtocolCtor<any, any>
)

A client request/response protocol or constructor of one. A protocol in this context is not e.g. https. It is the combined implementation of how to (de)serialize and create the messages (e.g. http requests/responses) that are being exchanged.

protocolSettings: { defaultNamespace?: string; [setting: string]: unknown } & {
    defaultNamespace?: string;
    [setting: string]: unknown;
}

These are automatically generated and will be passed to the config.protocol if given as a constructor.

region: (string | Provider<string>) & (
    | Provider<string> & string
    | Provider<string> & Provider<undefined | string>
)

The AWS region to which this client will send requests

requestHandler: RequestHandler<any, any, HttpHandlerOptions> & (
    HttpHandlerUserInput & RequestHandler<any, any, {}>
)

The HTTP handler to use or its constructor options. Fetch in browser and Https in Nodejs.

retryMode: string | Provider<string>

Specifies which retry algorithm to use.

retryStrategy: Provider<RetryStrategy | RetryStrategyV2>

Resolved value for input config RetryInputConfig.retryStrategy

runtime: string

The runtime environment.

serviceConfiguredEndpoint?: Provider<undefined | string>

A configured endpoint global or specific to the service from ENV or AWS SDK configuration files.

serviceId: string

Unique service identifier.

sha256: ChecksumConstructor | HashConstructor

A constructor for a class implementing the @smithy/types#ChecksumConstructor interface that computes the SHA-256 HMAC or checksum of a string or binary buffer.

streamCollector: StreamCollector

A function that converts a stream into an array of bytes.

tls: boolean

Whether TLS is enabled for requests.

token?: TokenIdentityProvider

The token used to authenticate requests.

urlParser: UrlParser

The function that will be used to convert strings into HTTP endpoints.

useDualstackEndpoint: (boolean | Provider<boolean>) & (
    Provider<boolean> & (boolean | Provider<boolean | undefined> | undefined)
)

Enables IPv6/IPv4 dualstack endpoint.

useFipsEndpoint: (boolean | Provider<boolean>) & (
    Provider<boolean> & (boolean | Provider<boolean | undefined> | undefined)
)

Enables FIPS compatible endpoints.

userAgentAppId: Provider<undefined | string>

Resolved value for input config {config.userAgentAppId}

utf8Decoder: Decoder

The function that will be used to convert a UTF8-encoded string to a byte array.

utf8Encoder: Encoder

The function that will be used to convert binary data to a UTF-8 encoded string.