AWS SDK for Kotlin Extensions
Latest stable Based on AWS release 0.4.0
Library manual grounded in the 0.4.0 release source.
Problem
Section titled “Problem”Builders, model conversions, Flow helpers, and client lifecycle utilities for the native suspend-based AWS SDK for Kotlin.
When to use it
Section titled “When to use it”Choose it when the application is coroutine-first and does not need Java SDK v2 client interoperability.
Coordinates
Section titled “Coordinates”Applications select one central BOM version.
dependencies { implementation(platform("io.github.bluetape4k:bluetape4k-dependencies:<version>")) implementation("io.github.bluetape4k.aws:bluetape4k-aws-kotlin")}AWS service SDKs follow a compileOnly policy; add the services actually used as runtime dependencies.
Core concepts
Section titled “Core concepts”Service calls are suspend functions from the SDK itself. This module adds concise request builders, pagination/Flow patterns, and with...Client ownership helpers.
Quick start
Section titled “Quick start”withS3Client(region = region) { s3 -> s3.putFromByteArray(bucket, key, bytes) s3.getAsByteArray(bucket, key)}API by task
Section titled “API by task”DynamoDB model DSL and batch execution, S3 object operations, SQS/SNS, SES, KMS, CloudWatch, Kinesis record Flow, STS, and HTTP engine providers.
Recommended patterns
Section titled “Recommended patterns”Put client and background-job ownership at one application boundary. Configure region, credentials, and endpoints once instead of rebuilding them per call.
Integrations
Section titled “Integrations”Add the selected aws.sdk.kotlin:<service> modules explicitly. Ktor integrations can use this library where native Kotlin SDK clients are appropriate.
Configuration
Section titled “Configuration”Choose the region, credential provider, endpoint, retry strategy, and CRT or OkHttp engine when creating the client.
Failure modes
Section titled “Failure modes”Do not mix Java SDK v2 and Kotlin SDK models accidentally. Watch for unbounded Flow collection, missing service modules, and clients created outside a closeable scope.
Operations
Section titled “Operations”Share long-lived clients when call volume is high; use with...Client for bounded jobs. Record the chosen HTTP engine and timeout policy.
Testing
Section titled “Testing”Run service tests against Floci first and switch the emulator explicitly when a native Kotlin SDK feature is unsupported.
Workshops and learning path
Section titled “Workshops and learning path”Begin with S3 request builders, then DynamoDB model conversion, and finally Kinesis or pagination Flow handling.
Limitations
Section titled “Limitations”The module is not a compatibility wrapper around Java SDK v2; types and some service coverage differ.
Release diagrams
Section titled “Release diagrams”These diagrams are loaded directly from README assets published with the 0.4.0 release and pinned to its immutable commit. They describe this manual’s released structure and runtime flows, not later Snapshot changes. Select a preview to open the SVG at the same release commit.
AWS Kotlin architecture diagram
Section titled “AWS Kotlin architecture diagram”Release README: aws-kotlin/README.md
AWS Kotlin operation flow diagram
Section titled “AWS Kotlin operation flow diagram”Release README: aws-kotlin/README.md
AWS Kotlin client lifecycle sequence diagram
Section titled “AWS Kotlin client lifecycle sequence diagram”Release README: aws-kotlin/README.md


