SDK

Python

Official open-source client for Python 3.10+. Sync and async variants included.

Installation

pip install linie
# or with uv
uv add linie

Initialisation

import os
from linie import LinieClient

# Sync
client = LinieClient(api_key=os.environ["LINIE_API_KEY"])

# Async
from linie import AsyncLinieClient
async_client = AsyncLinieClient(api_key=os.environ["LINIE_API_KEY"])

Method reference

queues.create(**options)

create(*, ttl: int, heartbeat_interval: int = 0, ...) -> Queue
Example
queue = client.queues.create(
    ttl=600,
    heartbeat_interval=60,
    priority_decay_rate=0.1,
    reminder_at=[0.5, 0.8, 1.0],
)
Response
Queue(id="q_abc123", ttl=600, depth=0, ...)

queues.enqueue(queue_id, **options)

enqueue(queue_id: str, *, priority: int = 0, metadata: dict = None, ...) -> Entry
Example
entry = client.queues.enqueue(
    queue.id,
    priority=100,
    metadata={"phone": "+6591234567", "name": "Ahmad R."},
)

queues.dequeue(queue_id)

dequeue(queue_id: str) -> Entry | None
Example
served = client.queues.dequeue(queue.id)  # None if empty

entries.heartbeat(queue_id, entry_id)

heartbeat(queue_id: str, entry_id: str) -> None
Example
# Async variant
await async_client.entries.heartbeat(queue.id, entry.id)

Links

Changelog  ·  GitHub source — coming soon