Metadata-Version: 2.4
Name: hypeline
Version: 0.3.0
Summary: Official Hypeline SDK: turn any source into a unified, deduplicated live stream of change events. Sources, change history, SSE with gap-free resume, and Standard Webhooks signature verification.
License: MIT
Keywords: hypeline,monitoring,webhooks,sse,change-detection,agents
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: urllib3<3.0.0,>=1.25.3
Requires-Dist: python_dateutil>=2.8.2
Requires-Dist: pydantic>=2
Requires-Dist: typing-extensions>=4.7.1
Requires-Dist: standardwebhooks>=1.0.0

# hypeline

Official Python SDK for Hypeline. Add any source URL, create an alert (a keyword query over
your sources), attach a destination (webhook or chat), poll change history, subscribe to the
live event stream over SSE (gap-free resume), and verify signed webhooks.

The client is organized as `source → alert → destination`:

```python
from hypeline import Hypeline

hy = Hypeline(api_key="...")

# source → alert → destination
src = hy.sources.create("https://example.com/blog", tags=["competitors"])
alert = hy.alerts.create(filter_query="acme OR globex", source_ids=[src.id])
created = hy.destinations.create(alert.id, kind="webhook",
                                 url="https://hooks.example.com/hypeline")
print(created.secret)  # webhook signing secret, revealed once

# poll change history, or stream live (keyword = content match)
for change in hy.get_changes_since(src.cursor).events:
    print(change.content)

for ev in hy.stream(keyword="acme"):
    print(ev.emitted_at, ev.content)
```

Namespaces: `hy.sources.{create, create_many, list, retrieve, update, delete}`,
`hy.alerts.{create, list, retrieve, update, delete}`,
`hy.destinations.{create, list_for_alert, list, retrieve, update, delete, test, rotate_secret}`.
`tags` on a source are static grouping labels (they do not match content); content matching is
the alert `filter_query` and the `keyword` filter on `stream`/`get_changes_since`.

See `sdk/README.md` for the shared regen/drift workflow.
