aws-sigv4 v0.1.0

WS Signature Version 4 signing for Crystal

aws-sigv4

AWS Signature Version 4 signing for Crystal. Standalone library for signing HTTP requests to any AWS service.

Installation

Add the dependency to your shard.yml:

dependencies:
  aws-sigv4:
    github: crystal-autobot/aws-sigv4

Run shards install.

Usage

require "aws-sigv4"

signer = AwsSigv4::Signer.new(
  access_key_id: "AKIAIOSFODNN7EXAMPLE",
  secret_access_key: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
  region: "us-east-1",
  service: "bedrock",
)

url = URI.parse("https://bedrock-runtime.us-east-1.amazonaws.com/model/test/converse")
headers = HTTP::Headers{"Content-Type" => "application/json"}
body = %({"messages": []})

signed_headers = signer.sign("POST", url, headers, body)

Temporary credentials with a session token are also supported:

signer = AwsSigv4::Signer.new(
  access_key_id: ENV["AWS_ACCESS_KEY_ID"],
  secret_access_key: ENV["AWS_SECRET_ACCESS_KEY"],
  region: ENV["AWS_REGION"],
  service: "s3",
  session_token: ENV["AWS_SESSION_TOKEN"],
)

Development

shards install
make test

License

MIT

Repository

aws-sigv4

Owner
Statistic
  • 0
  • 0
  • 0
  • 0
  • 1
  • about 7 hours ago
  • February 20, 2026
License

Links
Synced at

Fri, 20 Feb 2026 16:09:07 GMT

Languages