37 lines
1.5 KiB
Python
37 lines
1.5 KiB
Python
|
import urllib.request
|
||
|
import json
|
||
|
|
||
|
UNGLEICH_PAY_SERVER_URL = "https://pay.ungleich.ch"
|
||
|
|
||
|
|
||
|
class ungleichPay(object):
|
||
|
def __init__(self, parser, parents):
|
||
|
self.parser = parser
|
||
|
|
||
|
self.parser['customers-list'] = self.parser['sub'].add_parser(
|
||
|
'customers-list',
|
||
|
help="List customers who have an active VM at ungleich",
|
||
|
parents=[parents])
|
||
|
self.parser['username'].add_argument('--username', required=True)
|
||
|
self.parser['realm'].add_argument('--realm', required=True)
|
||
|
self.parser['token'].add_argument(
|
||
|
'--token', required=True,
|
||
|
help="A valid token obtained from ungleich"
|
||
|
)
|
||
|
self.parser['customers-list'].set_defaults(func=self.customers_list)
|
||
|
|
||
|
def customers_list(self, args):
|
||
|
customers_list_endpoint = "/customers-list"
|
||
|
request_url = UNGLEICH_PAY_SERVER_URL + customers_list_endpoint
|
||
|
req = urllib.request.Request(url=request_url,
|
||
|
method='GET',
|
||
|
headers={
|
||
|
"username": args.username,
|
||
|
"realm": args.realm,
|
||
|
"token": args.token,
|
||
|
"Accept": "application/json"
|
||
|
})
|
||
|
response = urllib.request.urlopen(req)
|
||
|
response_json = json.loads(response.read().decode('utf-8'))
|
||
|
print(response_json.data)
|