Metadata-Version: 2.4
Name: nys_client
Version: 0.1.1
Summary: Python client library for the Noyes API
Author: Noyes
Author-email: support@noyes-tech.com
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.28.1
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: typing-extensions>=4.12.2
Requires-Dist: pydantic<2.0.0,>=1.10.0
Requires-Dist: fastapi-pagination>=0.12.0
Requires-Dist: nys_constants>=0.1.0
Requires-Dist: nys_schemas>=0.1.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: license-file
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# NysClient

A Python client library for the Noyes API.

## Installation

```bash
pip install nys-client
```

## Usage

```python
from nys_client import NysClient, RequestType, TriggerStatus

# Initialize client
client = NysClient(api_key="your_api_key")

# Get requests with filtering
requests = client.requests.search(
    filters={"status": "ACCEPTED", "type": "FULFILLMENT"},
    sort_by="-created_at"
)

# Create a new request
new_request = client.requests.create_fulfillment(
    entities=[("SKU123", 1)],
    priority=10
)

# Get jobs with search
jobs = client.jobs.search(
    filters={"status__eq": "EXECUTING", "type__eq": "PICKING"}
)

# Trigger a job
client.jobs.trigger(
    job_id="job-uuid",
    trigger_status=TriggerStatus.SUCCEEDED_TRIGGER
)
```
