Stamps python SDK
Project description
# Stamps API
This is a Python library to interact with Stamps API
(https://stamps.co.id/api). It depends on Python requests library.
## Basic Usage
```python
import stamps
client = stamps.Client(token="ABCDEFGHIJKLMN")
# add transaction
merchant_id = 1
store_id = 1
user_email = "random @ email.com"
total_value = 50000
invoice_number = "invoice-1"
created = "2013-02-15T13:01:01+07"
items = [
{"product_name": "Ice tea", "quantity": 1, "price": 15000},
{"product_name": "Fried Rice", "quantity": 1, "price": 35000},
]
client.transactions.add(merchant_id, store_id, user_email,
total_value, invoice_number, created=created,
items=items)
```
## Handling error
```python
# Inspired by https://stripe.com/docs/api?lang=python#errors
import stamps
client = stamps.Client(token="ABCDEFGHIJKLMN")
try:
response_dict = client.authentication.login("steven@ui.co.id", "correct-password")
except stamps.exceptions.InvalidRequest as e:
# Submitted request is invalid, check error
print(e.http_status)
print(e.error_messages)
# Access the underlying Response object
print(e.response)
except stamps.exceptions.AuthenticationError as e:
# Your token is wrong
pass
except stamps.exceptions.ConnectionError as e:
# HTTP request failed, network trouble
pass
except stamps.exceptions.ServerError as e:
# There's something wrong from stamps API end point
pass
except Exception as e:
# Something else happened, unrelated to Stamps API
pass
```
## Development
```
pip install -e .
pip install responses tox
# to test
tox
```
This is a Python library to interact with Stamps API
(https://stamps.co.id/api). It depends on Python requests library.
## Basic Usage
```python
import stamps
client = stamps.Client(token="ABCDEFGHIJKLMN")
# add transaction
merchant_id = 1
store_id = 1
user_email = "random @ email.com"
total_value = 50000
invoice_number = "invoice-1"
created = "2013-02-15T13:01:01+07"
items = [
{"product_name": "Ice tea", "quantity": 1, "price": 15000},
{"product_name": "Fried Rice", "quantity": 1, "price": 35000},
]
client.transactions.add(merchant_id, store_id, user_email,
total_value, invoice_number, created=created,
items=items)
```
## Handling error
```python
# Inspired by https://stripe.com/docs/api?lang=python#errors
import stamps
client = stamps.Client(token="ABCDEFGHIJKLMN")
try:
response_dict = client.authentication.login("steven@ui.co.id", "correct-password")
except stamps.exceptions.InvalidRequest as e:
# Submitted request is invalid, check error
print(e.http_status)
print(e.error_messages)
# Access the underlying Response object
print(e.response)
except stamps.exceptions.AuthenticationError as e:
# Your token is wrong
pass
except stamps.exceptions.ConnectionError as e:
# HTTP request failed, network trouble
pass
except stamps.exceptions.ServerError as e:
# There's something wrong from stamps API end point
pass
except Exception as e:
# Something else happened, unrelated to Stamps API
pass
```
## Development
```
pip install -e .
pip install responses tox
# to test
tox
```
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
stamps-python-0.1.2.tar.gz
(4.3 kB
view details)
Built Distribution
File details
Details for the file stamps-python-0.1.2.tar.gz
.
File metadata
- Download URL: stamps-python-0.1.2.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2313c12ab549d1b094d9da8c97f10f5f8ea96bad3eacccfe1471af3dcda1123 |
|
MD5 | f705c8d4dbe55ef5ce3180db35bf4313 |
|
BLAKE2b-256 | 89aa68a4c32ba52961cf8a63d346f07b7faaa736b55569972e033b6f746b5bb9 |
File details
Details for the file stamps_python-0.1.2-py2.py3-none-any.whl
.
File metadata
- Download URL: stamps_python-0.1.2-py2.py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 051267a3671b7b48de3977cd0d5828957a14d187272d240fcf2d60d36b250eb6 |
|
MD5 | e8e1aad37210280dfab81dad7aa68b53 |
|
BLAKE2b-256 | 8cc7995090fb00eff26abfe93c5d8f7608b7cbeb74d12120c4de7f920a49fd67 |