aws_sdk

Library for interacting with Amazon Web Services (AWS)

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version Unknown
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-22 05:28

Tags

Installation

nimble install aws_sdk
choosenim install aws_sdk
git clone https://github.com/aidansteele/aws_sdk.nim

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
aws_sdk - - - - - - -

Source

Repository https://github.com/aidansteele/aws_sdk.nim
Homepage https://github.com/aidansteele/aws_sdk.nim
Registry Source nimble_official

README

aws_sdk Build Status

aws_sdk is a Nim library for interacting with Amazon Web Services.

Current status

aws_sdk is still a very much work in progress. Right now it is just the bare essentials: request signing. All AWS operations require authenticated HTTP calls - this library calculates the necessary header values.

It is planned to incorporate a library of functions that cover all the services provided by AWS - making the most of Nim's rich type-system and language features.

Usage

import aws_sdk/credentials
import aws_sdk/request
import aws_sdk/http

let payload = ""
let payloadHash = sphHash[SHA256](payload)
# special header required by S3
let headers = toTable({ "x-amz-content-sha256": hexify(payloadHash) })

# T in AwsRequest[T] can also be a StringTableRef
let req = AwsRequest[Table[string, string]](
  httpMethod: "GET",
  uri: parseUri("https://s3.amazonaws.com/"),
  headers: headers,
  payloadHash: payloadHash
)

# initAwsCredentialsFromEnv(): AwsCredentials is also available
let credentials = AwsCredentials(
  accessKeyId: "AKIDEXAMPLE",
  secretKey: "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
)

let resp = request(req, creds)
echo resp # <?xml version="1.0" encoding="UTF-8"?><ListAllMyBucketsResult xmlns="http://s3...