2 Commits
1.0.4 ... main

Author SHA1 Message Date
f10b39a3ba Update test data 2022-11-25 23:03:43 +13:00
bbd2083109 Added exception to catch rate-limiting. 2022-09-13 14:47:48 +12:00
8 changed files with 98 additions and 4 deletions

4
.gitignore vendored
View File

@@ -6,6 +6,10 @@ __pycache__
.coverage
coverage.xml
# distribution files
dist/
*egg-info/
# Ignore Scratch files
scratch/*
!/scratch/README.md

View File

@@ -1,10 +1,13 @@
import requests
gimport logging
from requests.auth import HTTPBasicAuth
from akauntingpy import exceptions
from akauntingpy.helpers import *
__version__ = "1.0.3"
__version__ = "1.0.5"
logger = logging.getLogger(__name__)
class Client(object):
@@ -68,6 +71,9 @@ class Client(object):
"\n".join(errors))
# elif response.status_code != 200 and response.status_code != 201:
# raise exceptions.Error(response_['message'])
elif response.status_code == 429:
# We hit the maximum requests
raise exceptions.TooManyAttempts(response_['message'])
return response_
def ping(self):
@@ -164,6 +170,12 @@ class Client(object):
amount=None, # Amount received/paid
**params # Any additional parameters
):
logger.info("Transfer called with parameters")
logger.info("from_account_id: %s", from_account_id)
logger.info("to_account_id: %s", to_account_id)
logger.info("transferred_at: %s", transferred_at)
logger.info("payment_method: %s", payment_method)
logger.info("amount: %s", amount)
data = self.call(endpoint="transfers",
method="POST",

View File

@@ -31,6 +31,14 @@ class ContactNotFound(Error):
"""
Account not found
Args:
Error (_type_): _description_
"""
class TooManyAttempts(Error):
"""
Too Many attempts to API
Args:
Error (_type_): _description_
"""

View File

@@ -4,7 +4,7 @@
"id":2,
"company_id":1,
"name":"Some Account",
"number":"**-9011-*******-03",
"number":"00-0000-0000000-00",
"currency_code":"NZD",
"opening_balance":0,
"opening_balance_formatted":"$0.00",
@@ -31,4 +31,4 @@
}
}
}
}
}

View File

@@ -0,0 +1,56 @@
{
"data":[
{
"id":2,
"company_id":1,
"type":"bank",
"name":"Some Account",
"number":"00-0000-0000000-00",
"currency_code":"NZD",
"opening_balance":351.17,
"opening_balance_formatted":"$351.17",
"current_balance":306.3600000000006,
"current_balance_formatted":"$306.36",
"bank_name":"None",
"bank_phone":"None",
"bank_address":"None",
"enabled":true,
"created_from":"core::ui",
"created_by":1,
"created_at":"2022-05-30T11:06:21+12:00",
"updated_at":"2022-05-30T11:10:47+12:00"
}
],
"links":{
"first":"https://someakaunting-url/api/accounts?page=1",
"last":"https://someakaunting-url/api/accounts?page=1",
"prev":"None",
"next":"None"
},
"meta":{
"current_page":1,
"from":1,
"last_page":1,
"links":[
{
"url":"None",
"label":"Previous",
"active":false
},
{
"url":"https://someakaunting-url/api/accounts?page=1",
"label":"1",
"active":true
},
{
"url":"None",
"label":"Next",
"active":false
}
],
"path":"https://someakaunting-url/api/accounts",
"per_page":100,
"to":1,
"total":1
}
}

View File

@@ -0,0 +1,13 @@
{
"data":[],
"meta":{
"total":0,
"count":0,
"per_page":100,
"current_page":0,
"total_pages":0,
"links":{
}
}
}

View File

@@ -8,7 +8,7 @@ with open('README.md', 'r') as readme:
setup(
name='akauntingpy',
name='akaunting-py',
use_scm_version=True,
author='CyberCinch',
description='Python interface to the Akaunting API.',
@@ -16,6 +16,7 @@ setup(
long_description=long_description,
long_description_content_type='text/markdown',
license='MIT',
version='1.0.5',
keywords='akaunting api library',
packages=find_packages(),
install_requires=[