Metadata-Version: 2.4
Name: serviceos
Version: 0.1.0
Summary: Python SDK for ServiceOS API
License-Expression: MIT
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: httpx>=0.25.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: tenacity>=8.2.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: respx>=0.21.0; extra == "dev"

# serviceos

Python SDK for ServiceOS API.

## Installation

```bash
pip install serviceos
```

## Quick Start

```python
from serviceos import ServiceOS

client = ServiceOS(api_key="sk_...", org_id="org_123")

# List open tickets
tickets = client.tickets.list(status="open")

# Create a ticket
ticket = client.tickets.create(title="Bug report", priority="high")

# Update a ticket
client.tickets.update(ticket["data"]["ticket_id"], status="resolved")

# Auto-paginate
for ticket in client.tickets.list_all(status="open"):
    print(ticket["title"])

# Teams and queues
teams = client.teams.list()
queues = client.queues.list()
```

## Error Handling

```python
from serviceos import ServiceOS, NotFoundError, RateLimitError

try:
    client.tickets.get("nonexistent")
except NotFoundError:
    print("Ticket not found")
except RateLimitError as e:
    print(f"Retry after {e.retry_after}s")
```

## Features

- Sync HTTP client (httpx)
- Pydantic models for type-safe parameters
- Auto-retry with tenacity (429 + 5xx, exponential backoff)
- Pagination iterator via `list_all()`
- Context manager support
- Debug mode for request logging
