Metadata-Version: 2.5
Name: houseofapps
Version: 0.1.1
Summary: Official Python SDK for the House of Apps API
Project-URL: Homepage, https://github.com/houseofapps/house-of-apps-sdk-service
Project-URL: Documentation, https://docs.houseofapps.ai
Author: House of Apps
License-Expression: MIT
License-File: LICENSE
Keywords: api,crm,houseofapps,sdk
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: aiohttp<4,>=3.9
Requires-Dist: pydantic<3,>=2
Provides-Extra: dev
Requires-Dist: mypy>=1.11; extra == 'dev'
Requires-Dist: pre-commit>=3.7; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.6; extra == 'dev'
Description-Content-Type: text/markdown

# House of Apps Python SDK

Official Python client for the [House of Apps](https://houseofapps.ai) API.

## Install

```bash
pip install houseofapps
```

## Quickstart

Credentials-first — no `base_url` required for production:

```python
from houseofapps import HouseOfApps

client = HouseOfApps(
    license_key="your-license-key",
    app_secret="your-app-secret",
)

companies = client.companies.list(page=1, page_size=20)
print(companies.items)
```

Environment variables (optional):

| Variable | Purpose |
|---|---|
| `HOUSEOFAPPS_LICENSE_KEY` | Isometrik license key |
| `HOUSEOFAPPS_APP_SECRET` | Isometrik app secret |
| `HOUSEOFAPPS_BASE_URL` | Override API host |
| `HOUSEOFAPPS_ENVIRONMENT` | `production` or `development` |
| `HOUSEOFAPPS_AI_KEY` | House of Apps AI key (email template create) |

```python
import os
from houseofapps import HouseOfApps

os.environ["HOUSEOFAPPS_LICENSE_KEY"] = "..."
os.environ["HOUSEOFAPPS_APP_SECRET"] = "..."

with HouseOfApps() as client:
    contact = client.contacts.get("contact-id")
```

### Async

```python
from houseofapps import AsyncHouseOfApps

async with AsyncHouseOfApps(license_key="...", app_secret="...") as client:
    leads = await client.leads.list()
```

### Environments

```python
# Development host (https://api-dev.houseofapps.ai)
client = HouseOfApps(
    license_key="...",
    app_secret="...",
    environment="development",
)
```

## Resources

| Attribute | Description |
|---|---|
| `client.companies` | Companies CRUD, search, activity, enrich |
| `client.contacts` | Contacts CRUD, lookup, imports |
| `client.variables` | Entity template variables |
| `client.leads` | Leads CRUD, search, activity |
| `client.email_templates` | Templates (`create` uses `house_of_apps_ai_key`) |
| `client.lists` | Saved entity lists |
| `client.installed_apps` | Installed apps |
| `client.custom_fields` | Custom fields |
| `client.lead_stages` | Pipeline stages |
| `client.filter_fields` | Filter field catalog |
| `client.product_interests` | Product interest catalog / assignments |

## Development

```bash
pip install -e ".[dev]"
pre-commit install
pytest
```

## License

MIT
