https://github.com/pokepay/aws-sdk-lisp
AWS-SDK for Common Lisp
https://github.com/pokepay/aws-sdk-lisp
aws aws-sdk common-lisp
Last synced: 5 months ago
JSON representation
AWS-SDK for Common Lisp
- Host: GitHub
- URL: https://github.com/pokepay/aws-sdk-lisp
- Owner: pokepay
- Created: 2017-08-30T08:22:33.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2024-12-17T08:19:24.000Z (over 1 year ago)
- Last Synced: 2025-12-19T05:19:36.266Z (6 months ago)
- Topics: aws, aws-sdk, common-lisp
- Language: Common Lisp
- Size: 26.6 MB
- Stars: 95
- Watchers: 10
- Forks: 22
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- curated-awesome-cl - aws-sdk-lisp - Provides interfaces for each AWS services as individual systems. [BSD_2Clause][17]. (REPLs ##)
README
# AWS-SDK for Common Lisp
## Warning
This software is still ALPHA quality. The APIs will be likely to change.
## Usage
AWS-SDK provides interfaces for each AWS services as individual systems under "aws-sdk/services/*".
Here's an example to send an SMS via Amazon Simple Notification Service:
```common-lisp
(ql:quickload '(:aws-sdk :aws-sdk/services/sns))
(setf aws:*session* (aws:make-session))
;; Sending
(aws/sns:publish :phone-number "+8190xxxxxxxx" :message "Hi, there")
```
## Configuring the SDK
### Configuring Credentials
Before using the SDK, you'll need to set AWS credentials for AWS services. AWS-SDK supports multiple methods to configure AWS credentials.
* Environment Credentials: Set `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`
* Shared Credentials file (~/.aws/credentials).
* EC2 Instance Role Credentials
It's also can be configured via `aws:*session*`:
```common-lisp
(setf aws:*session*
(aws:make-session :credentials
(aws:make-credentials
:access-key-id "XXXXXXXXXXXXXXXXXXXX"
:secret-access-key "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
:session-token "xxxxxxxxxxx")))
```
### Configuring AWS Region
For making AWS API request, AWS region is also required. There're multiple methods to configure it.
* Environment variable: `AWS_REGION`
* Shared configuration file (~/.aws/config).
It's also can be configured via `aws:*session*`:
```common-lisp
(setf aws:*session* (aws:make-session :region "us-west-2"))
```
## Development note
### Generating all services
```
$ lake
```
## Author
* Eitaro Fukamachi (e.arrows@gmail.com)
This product is developed with the generous support of [Pocket Change, K.K.](https://www.pocket-change.jp/)
## Copyright
Copyright (c) 2017 Eitaro Fukamachi (e.arrows@gmail.com)
## License
Licensed under the BSD 2-Clause License.