requests-auth-aws-sigv4
AWS SigV4 Authentication with the python requests module
What it is and what it does
This package provides an authentication handler for the requests library that automatically signs HTTP requests with AWS Signature Version 4, the standard authentication method for AWS APIs. It wraps the signing logic and integrates seamlessly with requests' auth parameter, allowing you to make authenticated calls to any AWS service—including API Gateway, Elasticsearch, STS, EC2, and others—without manually constructing signatures.
The package supports multiple credential sources: it will automatically use boto3-configured credentials (AWS CLI or SDK settings) if available, fall back to environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN), or accept credentials passed directly as parameters. It also includes a command-line interface for curl-like usage and supports temporary security credentials from AWS STS.
Use it for:
- Make authenticated requests to AWS API Gateway endpoints from Python without managing signature headers manually.
- Query AWS services like EC2, STS, or Elasticsearch from a Python application using standard requests syntax.
- Integrate AWS API calls into libraries that use requests under the hood.
- Build CLI tools or scripts that need to call AWS APIs with credentials from environment or boto3 configuration.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Adds AWS Signature Version 4 authentication to requests library calls, enabling signed HTTP requests to AWS APIs and services.
Yes, if you need AWS SigV4 authentication with requests and are comfortable with dormant maintenance. The package is stable and has no known vulnerabilities, but it has not been updated since 2021-02-16. Install it for straightforward AWS API calls in Python; consider alternatives if you require active maintenance.
Install
requests-auth-aws-sigv4 on PyPI
pip
pip install requests-auth-aws-sigv4uv
uv add requests-auth-aws-sigv4poetry
poetry add requests-auth-aws-sigv4Installing requests-auth-aws-sigv4
Before you install
Low install friction with a single runtime dependency (requests). Maintenance is dormant—last release was 2021-02-16 and last commit 2023-11-28. The package remains functional but receives no active updates.
License in practice
Licensed under Apache Software License (permissive), which allows commercial and private use with minimal restrictions.
Quickstart
pip install requests-auth-aws-sigv4
import requests
from requests_auth_aws_sigv4 import AWSSigV4
aws_auth = AWSSigV4('sts')
r = requests.get('https://sts.us-east-1.amazonaws.com', auth=aws_auth)
print(r.text)
AWS credentials must be available via environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY), boto3 configuration, or passed as parameters to AWSSigV4().
Verify before relying
- Whether the package works correctly with current AWS API changes since its last update in 2021.
- Compatibility with recent versions of the requests library and modern Python 3.x releases.
- Whether dormant status affects real-world usage for typical AWS API calls.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=2.7, >=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — requests |
| Maintenance | dormant — 2,005 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,501,670/month — #2,598 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: requests_auth_aws_sigv4-0.7-py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
aws-requests-authAdds AWS Signature Version 4 authentication to…
permissive · top 1,000 on PyPI
requests-aws-signAdds AWS V4 request signing to the requests…
permissive · top 5,000 on PyPI
requests-sigv4Adds AWS Signature Version 4 signing to…
permissive · top 5,000 on PyPI
requests-aws4authAdds AWS Signature Version 4 authentication to…
permissive · top 1,000 on PyPI
awscurlA curl-like command-line tool that…
permissive · top 15,000 on PyPI
cassandra-sigv4Adds AWS Signature Version 4 authentication to…
permissive · top 15,000 on PyPI
aws-request-signerSigns HTTP requests using AWS Signature V4,…
permissive · top 15,000 on PyPI
googleauthenticationA meta package for connecting Python…
permissive · top 15,000 on PyPI
aws-sdk-signersProvides standalone SigV4 request signing for…
permissive · top 15,000 on PyPI
pysncPySnc provides a Python interface to…
permissive · top 15,000 on PyPI