A robust and extensible Python client for interacting with the [Spire Business Software API](https://developer.spiresystems.com/reference). This client provides an object-oriented interface to get, create, update, delete, query, filter, sort, and manage various Spire modules such as Sales Orders, Invoices, Inventory Items, and more.
Project description
Spire API Python Client
A robust and extensible Python client for interacting with the Spire Business Software API. This client provides an object-oriented interface to get, create, update, delete, query, filter, sort, and manage various Spire modules such as Sales Orders, Invoices, Inventory Items, and more.
Documentation
https://sanjid-sharaf.github.io/spyre/
✨ Features
- ✅ Object-oriented resource wrappers for each module (e.g.,
salesOrder,invoice,item) - 🔍 Full-text search via
qparameter - 🔁 Pagination with
startandlimitsupport - 🧾 JSON-based advanced filtering (supports
$gt,$lt,$in,$or, etc.) - ↕️ Multi-field sorting with ascending/descending control
- 🔧 Clean abstraction layer for API endpoints
- 📦 Powered by
pydanticmodels for validation
📦 Installation
pip install spyreapi
⚙️ Configuration
- How to set up your spire client
Find your Spire URL
The base URL for the Spire API is the same url provided by Spire that you use to access Spire server and uses port 10880 as default: Replace {spire-url} with the url provided by Spire.
- https://{spire-url}:10880/api/v2/
Spire Cloud If you are using Spire cloud you do not need to specify a port. The base URL for API for Spire Cloud customers would be:
- https://{spire-cloud-url}/api/v2/
Set up your client with your credentials
from spyre import Spire
# host is your spire url and the port if applicable
client = Spire(host = 'your-spire-host', company = 'comapany-name' , username = 'username' , password = 'password' )
Example : Updating the status of an inventory item
item = client.inventory.items.get_item(1101) # Gets item with id 1101
item.status = 1 # Use either item. or item.model. . item.model. will bring up all attributes
item.update()
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file spyreapi-0.0.7.tar.gz.
File metadata
- Download URL: spyreapi-0.0.7.tar.gz
- Upload date:
- Size: 19.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3977409283ea857734e16d51a808b3b601848b600af84f3c54883a010e82211c
|
|
| MD5 |
248becd068b1e4c7e327a57d0f76c3d1
|
|
| BLAKE2b-256 |
ca3336fb31902570150533fc4ff01447683c90865222d53d2acd871d12f54356
|
File details
Details for the file spyreapi-0.0.7-py3-none-any.whl.
File metadata
- Download URL: spyreapi-0.0.7-py3-none-any.whl
- Upload date:
- Size: 24.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6643728f4d972e9b2487f54a21c4ac6cfee8a2a1f1f9198f0c136e6cb7030888
|
|
| MD5 |
5c63ea49871039c2ed2446b065f7c912
|
|
| BLAKE2b-256 |
91ca079e25cfcc060e65545a2695ee1b287b8d70586a07680517704667220b01
|