Skip to main content

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 q parameter
  • 🔁 Pagination with start and limit support
  • 🧾 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 pydantic models 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

spyreapi-0.0.9.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spyreapi-0.0.9-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

Details for the file spyreapi-0.0.9.tar.gz.

File metadata

  • Download URL: spyreapi-0.0.9.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for spyreapi-0.0.9.tar.gz
Algorithm Hash digest
SHA256 7fc53ba48148e6e595a2d011c031cf00890c1952a38b470e3793c27142fbfe1a
MD5 1f6d6940d4e29e300cfff59b7f55923f
BLAKE2b-256 70c6e0fc5db8eaeaa9763bcf76e0cb91e4a4fd358f1eb209ab5c1e31ef1285b1

See more details on using hashes here.

File details

Details for the file spyreapi-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: spyreapi-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 28.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for spyreapi-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 d6998badf7520dc46e84becc9238cff47de95df6dd553fe7e837601858eecfc0
MD5 edbd1a794a1d954e135fb09b49c5bb59
BLAKE2b-256 64b77b3850004698bebc25caa14488cc84d1d84c690e535b091f6d553f337df7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page