Python SDK to access Xero APIs
Project description
xero-sdk-py
Python SDK to access Xero APIs
Requirements
Installation
Install Xero SDK using pip as follows:
pip install xerosdk
Usage
This SDK requires OAuth2 authentication credentials such as client ID, client secret and refresh token.
- Create a connection using the XeroSDK class.
from xerosdk import XeroSDK
connection = XeroSDK(
base_url='<XERO_BASE_URL>',
client_id='<YOUR CLIENT ID>',
client_secret='<YOUR CLIENT SECRET>',
refresh_token='<YOUR REFRESH TOKEN>'
)
# tenant_id is required to make a call to any API
tenant_id = connection.tenants.get_all()[0]['tenantId']
connection.set_tenant(tenant_id)
- Access any of the API classes
"""
USAGE: <XeroSDK INSTANCE>.<API_NAME>.<API_METHOD>(<PARAMETERS>)
"""
# Get a list of all Invoices
response = connection.invoices.get_all()
# Get an Invoice by id
response = connection.invoices.get_by_id(<invoice_id>)
NOTE: Only Tenants, Invoices, Accounts, Contacts, Items and TrackingCategories API classes are defined in this SDK.
Integration Tests
- Install pytest package using pip as follows:
pip install pytest
- Create a 'test_credentials.json' file at project root directory and enter Xero OAuth2 authentication credentials of your Xero app.
{
"base_url": "<xero_base_url>",
"client_id": "<client_id>",
"client_secret": "<client_secret>",
"refresh_token": "<refresh_token>"
}
- Run integration tests as follows:
python -m pytest tests/integration
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
xerosdk-0.5.0.tar.gz
(8.4 kB
view hashes)
Built Distribution
xerosdk-0.5.0-py3-none-any.whl
(12.9 kB
view hashes)