Skip to main content

Curl like tool with AWS request signing

Project description

# awscurl
Curl like tool with AWS Signature Version 4 request signing. [![Build Status](https://travis-ci.org/okigan/awscurl.svg?branch=master)](https://travis-ci.org/okigan/awscurl)


## Overview
Requests to AWS API must be signed (see [Signing AWS API Requests](http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html))
automates the process of signing and allows to make requests to AWS as simple as standard curl command.


## Installation
```sh
$ pip install awscurl
```

## Examples
* Call S3:
List bucket content
```sh
$ awscurl.py --service s3 https://okigan-lambdapics.s3.amazonaws.com
```

* Call EC2:
```sh
$ awscurl --service ec2 'https://ec2.amazonaws.com?Action=DescribeRegions&Version=2013-10-15'
```

* Call API Gateway:
```sh
$ awscurl --service execute-api -X POST -d @request.json \
https://<prefix>.execute-api.us-east-1.amazonaws.com/<resource>
```

## Options
```
usage: awscurl.py [-h] [-v] [-X REQUEST] [-d DATA] [-H HEADER]
[--region REGION] [--service SERVICE]
[--access_key ACCESS_KEY] [--secret_key SECRET_KEY]
[--security_token SECURITY_TOKEN]
uri

Curl AWS request signing If an arg is specified in more than one place, then
command-line values override environment variables which override defaults.

positional arguments:
uri

optional arguments:
-h, --help show this help message and exit
-v, --verbose verbose flag (default: False)
-X REQUEST, --request REQUEST
Specify request command to use (default: GET)
-d DATA, --data DATA HTTP POST data (default: )
-H HEADER, --header HEADER
HTTP POST data (default: None)
--region REGION AWS region (default: us-east-1)
--service SERVICE AWS service (default: execute-api)
--access_key ACCESS_KEY
[env var: AWS_ACCESS_KEY_ID] (default: None)
--secret_key SECRET_KEY
[env var: AWS_SECRET_ACCESS_KEY] (default: None)
--security_token SECURITY_TOKEN
[env var: AWS_SECURITY_TOKEN] (default: None)

```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

awscurl-0.5.tar.gz (5.1 kB view details)

Uploaded Source

File details

Details for the file awscurl-0.5.tar.gz.

File metadata

  • Download URL: awscurl-0.5.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for awscurl-0.5.tar.gz
Algorithm Hash digest
SHA256 aa47d84f974e28b723b3298799e977eccf86441965fe220fd0c685bba26ad20b
MD5 2ac10f723894dadcab7c6bbe88695230
BLAKE2b-256 a7bbb130906370b40cb2df1797e46176a0d64bb2bac44d57faea92651b5d2279

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page