aws-requests-auth
AWS signature version 4 signing process for the python requests module
Decision gist · record as of 2026-08-14
No—this package is abandoned (last release May 2020, no commits since May 2023) and will receive no maintenance or security updates. For new projects, use boto3 or botocore directly, which are actively maintained and provide equivalent or superior AWS authentication. Only consider installing if you are maintaining legacy code that already depends on it and cannot migrate to boto3.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction install with a single runtime dependency.
- Package is abandoned—last release was 2020-05-27 and no commits since 2023-05-22—so expect no maintenance or security updates going forward.
License · maintenance · safety
permissive license (permissive) — Permissive BSD license allows use in most projects without restriction.
last release 2020-05-27 (2270 days) · last repo commit 2023-05-22 · 509 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 25,978,592 downloads/mo, #896 on PyPI
Alternatives
Verify before relying
pip install aws-requests-auth
import requests
from aws_requests_auth.aws_auth import AWSRequestsAuth
auth = AWSRequestsAuth(aws_access_key='KEY',
aws_secret_access_key='SECRET',
aws_host='example.es.amazonaws.com',
aws_region='us-east-1',
aws_service='es')
response = requests.get('http://example.es.amazonaws.com', auth=auth)- Whether the package works correctly with current versions of requests and Python 3.x given its abandoned status
- Whether AWS Signature Version 4 signing implementation remains compatible with current AWS API requirements
- Whether temporary credentials (aws_token) and botocore integration work reliably without maintenance
What it is and what it does
aws-requests-auth is a Python library that implements AWS Signature Version 4 signing for the requests HTTP library. It wraps your AWS credentials (access key, secret key, and optionally a session token) into an auth handler that requests can use to automatically sign outgoing HTTP requests to AWS services. The package was originally built to authenticate against AWS Elasticsearch, but the signing logic is generic enough to work with any AWS service that uses Signature Version 4.
You instantiate an AWSRequestsAuth object with your AWS credentials and service details, then pass it as the auth parameter to any requests call. The library also provides convenience methods to pull credentials from botocore (boto3's underlying credential system), which can automatically discover credentials from environment variables, IAM roles, or AWS config files. This is particularly useful in AWS Lambda or containerized environments where credentials are managed by the platform.
Use it for
- Authenticate requests to AWS Elasticsearch clusters from Python applications without managing credentials in code
- Sign requests to AWS API Gateway endpoints protected by IAM authentication
- Query AWS services from AWS Lambda functions using environment variables or IAM role credentials
- Make authenticated calls to any AWS service endpoint from a Python script using requests
- Integrate AWS authentication into applications that already use requests for HTTP communication
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No—this package is abandoned (last release May 2020, no commits since May 2023) and will receive no maintenance or security updates.
For new projects, use boto3 or botocore directly, which are actively maintained and provide equivalent or superior AWS authentication. Only consider installing if you are maintaining legacy code that already depends on it and cannot migrate to boto3.
Install
aws-requests-auth on PyPI
Before you install
Low friction install with a single runtime dependency. Package is abandoned—last release was 2020-05-27 and no commits since 2023-05-22—so expect no maintenance or security updates going forward.
License in practice
Permissive BSD license allows use in most projects without restriction.
Quickstart
pip install aws-requests-auth
import requests
from aws_requests_auth.aws_auth import AWSRequestsAuth
auth = AWSRequestsAuth(aws_access_key='KEY',
aws_secret_access_key='SECRET',
aws_host='example.es.amazonaws.com',
aws_region='us-east-1',
aws_service='es')
response = requests.get('http://example.es.amazonaws.com', auth=auth)
Verify before relying
- Whether the package works correctly with current versions of requests and Python 3.x given its abandoned status
- Whether AWS Signature Version 4 signing implementation remains compatible with current AWS API requirements
- Whether temporary credentials (aws_token) and botocore integration work reliably without maintenance
Package facts
| License | permissive license permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagerequests |
| Maintenance | Abandoned 2,270 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 25,978,592 / month, #896 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 3 |
Evidence: aws_requests_auth-0.4.3-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “aws signature version 4 signing”
- aws-requests-authAdds AWS Signature Version 4 authentication to Python requests…
- requests-sigv4Adds AWS Signature Version 4 signing to requests library calls,…
- awscurlA curl-like command-line tool that automatically signs and sends HTTP…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also aws-request-signer · requests-auth-aws-sigv4 · requests-aws4auth · requests-aws-sign · cassandra-sigv4 · aws-msk-iam-sasl-signer-python · requests-sigv4 · keyrings.codeartifact · veracode-api-signing · awscurl